@charset "UTF-8";
: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;
  /* 2029: keep the fixed header on its own compositor layer while the document scrolls. */
  transform:translateZ(0);
  backface-visibility:hidden;
}
.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}}


/* 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}
}


/* 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;
  }
}


/* v1.5.39 — 상세페이지 검색창: 시설검색 페이지와 동일한 sl-search-box UI */
.facility-detail-page .facility-detail-search-box{
  margin-top:14px!important;
  margin-bottom:20px!important;
}
@media(max-width:760px){
  .facility-detail-page .facility-detail-search-box{
    margin-top:10px!important;
    margin-bottom:16px!important;
  }
}

/* v1.5.55 — /flower-info/ 실제 정보글 카드 강제 컴팩트화 */
.snf-flower-info-compact-card{
  min-height:0!important;
  padding:12px!important;
  margin-top:0!important;
  margin-bottom:10px!important;
}
.snf-flower-info-compact-card .snf-flower-info-compact-media{
  width:140px!important;
  max-width:140px!important;
  min-width:0!important;
  height:92px!important;
  max-height:92px!important;
  margin:0 14px 0 0!important;
  overflow:hidden!important;
  border-radius:10px!important;
}
.snf-flower-info-compact-card .snf-flower-info-compact-thumb,
.snf-flower-info-compact-card img{
  width:140px!important;
  max-width:140px!important;
  height:92px!important;
  max-height:92px!important;
  min-height:0!important;
  object-fit:cover!important;
  border-radius:10px!important;
}
.snf-flower-info-compact-card .snf-flower-info-compact-title,
.snf-flower-info-compact-card h2,
.snf-flower-info-compact-card h3{
  font-size:17px!important;
  line-height:1.38!important;
  margin-top:0!important;
  margin-bottom:5px!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
.snf-flower-info-compact-card .snf-flower-info-compact-summary,
.snf-flower-info-compact-card p{
  font-size:12.5px!important;
  line-height:1.5!important;
  margin-top:0!important;
  margin-bottom:5px!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
.snf-flower-info-compact-card .snf-flower-info-compact-more{
  font-size:12px!important;
  line-height:1.3!important;
}
@media(max-width:720px){
  .snf-flower-info-compact-card{
    padding:9px!important;
    margin-bottom:8px!important;
  }
  .snf-flower-info-compact-card .snf-flower-info-compact-media{
    width:88px!important;
    max-width:88px!important;
    height:66px!important;
    max-height:66px!important;
    margin-right:10px!important;
    border-radius:8px!important;
  }
  .snf-flower-info-compact-card .snf-flower-info-compact-thumb,
  .snf-flower-info-compact-card img{
    width:88px!important;
    max-width:88px!important;
    height:66px!important;
    max-height:66px!important;
    border-radius:8px!important;
  }
  .snf-flower-info-compact-card .snf-flower-info-compact-title,
  .snf-flower-info-compact-card h2,
  .snf-flower-info-compact-card h3{
    font-size:14px!important;
    line-height:1.35!important;
    margin-bottom:3px!important;
  }
  .snf-flower-info-compact-card .snf-flower-info-compact-summary,
  .snf-flower-info-compact-card p{
    font-size:11px!important;
    line-height:1.42!important;
    margin-bottom:3px!important;
  }
  .snf-flower-info-compact-card .snf-flower-info-compact-more{font-size:10.5px!important;}
}

/* v1.5.59 — 시설정보 공식 홈페이지 링크에도 상단과 동일한 홈 아이콘 */
.facility-info-homepage-link{display:inline-flex;align-items:center;gap:6px}
.facility-info-homepage-link svg{width:17px;height:17px;flex:0 0 17px}

/* v1.5.60 — 시설정보 전화번호 링크에도 상단과 동일한 전화 아이콘 */
.facility-info-phone-link{display:inline-flex;align-items:center;gap:6px}
.facility-info-phone-link svg{width:17px;height:17px;flex:0 0 17px}


/* v1.5.64 — 검색어 업종에 맞춰 단일 검색결과 바 색상 확정
   예식장/웨딩홀/결혼식장 검색은 웨딩 연한 와인색, 장례식장 검색은 기존 장례 색상. */
.sl-results-section.is-wedding-search .sl-wedding-column .sl-result-column-title,
.sl-results-section.is-wedding-search .sl-result-columns.is-wedding-only .sl-result-column-title{
  background:#f3e2e5!important;
  border-color:#d9bfc4!important;
}
.sl-results-section.is-wedding-search .sl-wedding-column .sl-result-column-title h3{color:#713f47!important;}
.sl-results-section.is-wedding-search .sl-wedding-column .sl-result-column-title strong{color:#76676a!important;}
.sl-results-section.is-wedding-search .sl-wedding-column .sl-result-column-title strong span{color:#a65f69!important;}
.sl-results-section.is-wedding-search .sl-wedding-column{border-color:#d9bfc4!important;}

.sl-results-section.is-funeral-search .sl-funeral-column .sl-result-column-title,
.sl-results-section.is-funeral-search .sl-result-columns.is-funeral-only .sl-result-column-title{
  background:#f5f5f5!important;
  border-color:#d8d8d8!important;
}


/* v1.5.65 — 결과 종류 자체를 기준으로 헤더 바 색상 고정 */
.sl-results-section .sl-wedding-column .sl-result-column-title,
.sl-results-section .sl-result-columns.is-wedding-only .sl-wedding-column .sl-result-column-title{
  background:#f3e2e5!important;
  border-color:#d9bfc4!important;
}
.sl-results-section .sl-wedding-column .sl-result-column-title h3{color:#713f47!important;}
.sl-results-section .sl-wedding-column .sl-result-column-title strong{color:#76676a!important;}
.sl-results-section .sl-wedding-column .sl-result-column-title strong span{color:#a65f69!important;}
.sl-results-section .sl-wedding-column{border-color:#d9bfc4!important;}

.sl-results-section .sl-funeral-column .sl-result-column-title{
  background:#f5f5f5!important;
  border-color:#d8d8d8!important;
}

/* v1.5.66 — PC 검색결과 헤더의 시설 수를 제목 바로 옆으로 이동. 모바일 배치는 기존 유지. */
@media (min-width: 769px){
  .sl-results-section .sl-result-column-title{
    justify-content:flex-start!important;
    gap:8px!important;
  }
}

/* v1.5.71 — 시설 상세: 시설정보/반입안내와 주문 가능 상품 사이 과도한 공백 제거 */
.facility-detail-page .facility-products-section{
  max-width:none;
  margin-top:32px;
  padding:0;
}
.facility-detail-page .facility-restriction-box + .facility-products-section{
  margin-top:30px;
}
@media(max-width:520px){
  .facility-detail-page .facility-products-section,
  .facility-detail-page .facility-restriction-box + .facility-products-section{
    margin-top:26px;
    padding:0;
  }
}


/* v1.5.74 — regional directory: compact 2-column desktop cards */
@media (min-width:761px){
  .region-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;}
  .region-list .sl-region-item{margin-bottom:0;min-width:0;}
  .region-list .sl-region-main{height:100%;min-height:118px;padding:18px 64px 18px 18px;}
}
@media (max-width:760px){
  .region-list{display:block;}
  .region-list .sl-region-item{margin-bottom:10px;}
}

/* v1.5.77 — order add-product family lock */
.order-product-group[hidden],.order-product-card.order-kind-hidden{display:none!important;}


/* v1.5.80 — selected products live total */
.selected-products-total{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:12px;padding:12px 4px 2px;border-top:1px solid #e7e7e7}
.selected-products-total[hidden]{display:none!important}
.selected-products-total span{font-size:13px;font-weight:700;color:#666}
.selected-products-total strong{font-size:22px;line-height:1;color:#20272b;letter-spacing:-.02em}
@media(max-width:640px){
 .selected-products-total{justify-content:space-between;padding:12px 2px 2px}
 .selected-products-total strong{font-size:20px}
}

/* v1.5.81 — stronger centered final order CTA on desktop */
@media (min-width:521px){
  .order-submit{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(420px,1.45fr);gap:28px;align-items:center;padding:16px 20px;}
  .order-submit button{width:100%;min-height:64px;height:64px;padding:0 40px;font-size:20px;border-radius:4px;justify-self:center;}
}

/* v1.5.84 — payment copy readability only; preserve original white cards */
.payment-choice small{font-size:13px!important;color:#4f514d!important;line-height:1.55!important;margin-top:3px!important;}
.payment-choice label span{min-width:0;}
@media(max-width:520px){.payment-choice small{font-size:12px!important;line-height:1.5!important;}}

/* v1.5.85 — payment option whole-card click affordance + subtle desktop hover */
.payment-choice label{cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
@media (hover:hover) and (pointer:fine){
  .payment-choice label:hover{border-color:#c8c2b8;box-shadow:0 5px 14px rgba(24,24,22,.06);transform:translateY(-1px);}
}
.payment-choice label:focus-within{border-color:#c8c2b8;box-shadow:0 0 0 2px rgba(64,88,70,.08);}
@media(max-width:520px){.payment-choice label{cursor:pointer;}}

/* v1.5.86 — clearer blue payment-card hover/selected affordance */
@media (hover:hover) and (pointer:fine){
  .payment-choice label:hover{
    border-color:#5f8fc4!important;
    box-shadow:0 5px 15px rgba(61,116,174,.13)!important;
    transform:translateY(-1px)!important;
  }
}
.payment-choice label:has(input:checked){
  border-color:#5f8fc4!important;
  box-shadow:0 0 0 1px rgba(95,143,196,.12)!important;
}
.payment-choice label:focus-within{
  border-color:#5f8fc4!important;
  box-shadow:0 0 0 2px rgba(95,143,196,.12)!important;
}

/* v1.5.87 — payment cards: rounded corners; blue only on hover */
.payment-choice label{
  border-radius:10px!important;
}
.payment-choice label:has(input:checked),
.payment-choice label:focus-within{
  border-color:var(--line)!important;
  box-shadow:none!important;
}
@media (hover:hover) and (pointer:fine){
  .payment-choice label:hover,
  .payment-choice label:has(input:checked):hover,
  .payment-choice label:focus-within:hover{
    border-color:#5f8fc4!important;
    box-shadow:0 5px 15px rgba(61,116,174,.13)!important;
    transform:translateY(-1px)!important;
  }
}


/* v1.5.93 — Default Post readable centered width. main.css is the actually enqueued frontend stylesheet. */
body.single-post main#primary.snf-info-single-wrap{
  width:100%!important;
  max-width:920px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:48px 20px 72px!important;
  box-sizing:border-box!important;
}
body.single-post main#primary.snf-info-single-wrap article.snf-info-single{
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content{
  display:block!important;
  width:100%!important;
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content > .alignwide,
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content > .alignfull,
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content .alignwide,
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content .alignfull{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
@media(max-width:620px){
  body.single-post main#primary.snf-info-single-wrap{padding:30px 15px 54px!important;}
  body.single-post main#primary.snf-info-single-wrap .snf-info-single-content{max-width:100%!important;}
}

/* v1.5.94 — Default Post single layout EXACTLY matches /flower-info/ single content layout. */
body.single-post main#primary.snf-info-single-wrap{
  width:100%!important;
  max-width:920px!important;
  margin:0 auto!important;
  padding:48px 20px 72px!important;
  box-sizing:border-box!important;
}
body.single-post main#primary.snf-info-single-wrap article.snf-info-single{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-head{
  display:block!important;
  width:100%!important;
  margin:0 0 28px!important;
  padding:0!important;
  text-align:center!important;
  box-sizing:border-box!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-cat{
  display:inline-flex!important;
  margin:0 0 12px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:#eef5f2!important;
  color:#2f6456!important;
  text-decoration:none!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-head h1{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
  font-size:38px!important;
  line-height:1.3!important;
  letter-spacing:-.04em!important;
  color:#17231f!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-head time{
  display:block!important;
  width:100%!important;
  margin:12px 0 0!important;
  text-align:center!important;
  color:#83908b!important;
  font-size:13px!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-thumb{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 30px!important;
  padding:0!important;
  justify-content:center!important;
  align-items:flex-start!important;
  background:transparent!important;
  border-radius:18px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  text-align:center!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-thumb img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  margin:0 auto!important;
  border-radius:12px!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  color:#293630!important;
  font-size:16px!important;
  line-height:1.9!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content img{
  max-width:100%!important;
  height:auto!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content h2{
  margin-top:2em!important;
  font-size:26px!important;
}
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content h3{
  margin-top:1.8em!important;
  font-size:21px!important;
}
/* Gutenberg wide/full blocks stay within the same 920px info-content article canvas. */
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content .alignwide,
body.single-post main#primary.snf-info-single-wrap .snf-info-single-content .alignfull{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}
@media(max-width:620px){
  body.single-post main#primary.snf-info-single-wrap{padding:30px 15px 54px!important;}
  body.single-post main#primary.snf-info-single-wrap .snf-info-single-head h1{font-size:28px!important;}
  body.single-post main#primary.snf-info-single-wrap .snf-info-single-content{font-size:15px!important;line-height:1.85!important;}
  body.single-post main#primary.snf-info-single-wrap .snf-info-single-thumb{border-radius:14px!important;}
}


/* v1.5.95 — default Post tags, matched to info-content article styling */
body.single-post .snf-post-tags{
  display:flex;
  align-items:flex-start;
  gap:12px;
  width:100%;
  margin:34px 0 0;
  padding:20px 0 0;
  border-top:1px solid #e8ece9;
  box-sizing:border-box;
}
body.single-post .snf-post-tags-label{
  flex:0 0 auto;
  padding-top:5px;
  color:#78847f;
  font-size:13px;
  font-weight:700;
}
body.single-post .snf-post-tags-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
body.single-post .snf-post-tags-list a{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 11px;
  border:1px solid #dfe6e2;
  border-radius:999px;
  background:#f8faf9;
  color:#53625b;
  font-size:13px;
  line-height:1.4;
  text-decoration:none;
}
body.single-post .snf-post-tags-list a:hover{
  border-color:#bfcfc7;
  background:#f1f6f3;
  color:#243a31;
}
@media(max-width:620px){
  body.single-post .snf-post-tags{gap:9px;margin-top:28px;padding-top:16px;}
  body.single-post .snf-post-tags-list{gap:6px;}
  body.single-post .snf-post-tags-list a{font-size:12px;min-height:28px;padding:4px 9px;}
}

/* =========================================================
 * v1.5.96 — Default Post category/tag archive
 * ========================================================= */
body.archive .snf-post-archive{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
  padding:52px 0 76px;
  box-sizing:border-box;
}
body.archive .snf-post-archive-head{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}
body.archive .snf-post-archive-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 12px;
  margin-bottom:12px;
  border-radius:999px;
  background:#eef5f2;
  color:#2f6456;
  font-size:13px;
  font-weight:800;
}
body.archive .snf-post-archive-head h1{
  margin:0;
  color:#17231f;
  font-size:38px;
  line-height:1.3;
  letter-spacing:-.04em;
}
body.archive .snf-post-archive-desc{
  margin-top:12px;
  color:#68736f;
  font-size:15px;
  line-height:1.75;
}
body.archive .snf-post-archive-desc p{margin:0;}
body.archive .snf-post-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
body.archive .snf-post-archive-card{
  overflow:hidden;
  margin:0;
  border:1px solid #e5e9e7;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 22px rgba(26,47,39,.05);
}
body.archive .snf-post-archive-thumb{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#f4f6f5;
  text-decoration:none;
}
body.archive .snf-post-archive-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .25s ease;
}
body.archive .snf-post-archive-card:hover .snf-post-archive-thumb img{transform:scale(1.025);}
body.archive .snf-post-archive-thumb-empty{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  color:#98a19d;
  font-size:14px;
  font-weight:700;
}
body.archive .snf-post-archive-body{padding:20px 20px 22px;}
body.archive .snf-post-archive-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
  color:#7b8682;
  font-size:12px;
}
body.archive .snf-post-archive-meta span{
  color:#3f6e61;
  font-weight:800;
}
body.archive .snf-post-archive-card h2{
  margin:0;
  font-size:20px;
  line-height:1.45;
  letter-spacing:-.025em;
}
body.archive .snf-post-archive-card h2 a{color:#1c2924;text-decoration:none;}
body.archive .snf-post-archive-excerpt{
  margin-top:11px;
  color:#66716d;
  font-size:14px;
  line-height:1.75;
}
body.archive .snf-post-archive-more{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-top:15px;
  color:#335f53;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}
body.archive .snf-post-archive-pagination{margin-top:38px;text-align:center;}
body.archive .snf-post-archive-pagination .nav-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:7px;
}
body.archive .snf-post-archive-pagination .page-numbers{
  display:inline-flex;
  min-width:36px;
  min-height:36px;
  padding:0 10px;
  align-items:center;
  justify-content:center;
  border:1px solid #dfe5e2;
  border-radius:9px;
  background:#fff;
  color:#46524d;
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}
body.archive .snf-post-archive-pagination .page-numbers.current{
  border-color:#35675a;
  background:#35675a;
  color:#fff;
}
body.archive .snf-post-archive-empty{
  max-width:680px;
  margin:0 auto;
  padding:46px 24px;
  border:1px solid #e4e9e7;
  border-radius:16px;
  background:#fafbfa;
  text-align:center;
  color:#66716d;
}
body.archive .snf-post-archive-empty strong{display:block;color:#26342f;font-size:19px;}
body.archive .snf-post-archive-empty p{margin:8px 0 0;font-size:14px;}
@media (max-width:900px){
  body.archive .snf-post-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:640px){
  body.archive .snf-post-archive{width:calc(100% - 30px);padding:32px 0 54px;}
  body.archive .snf-post-archive-head{margin-bottom:24px;}
  body.archive .snf-post-archive-head h1{font-size:28px;}
  body.archive .snf-post-archive-grid{grid-template-columns:1fr;gap:16px;}
  body.archive .snf-post-archive-body{padding:17px 17px 19px;}
  body.archive .snf-post-archive-card h2{font-size:18px;}
}


/* =========================================================
 * v1.5.97 — Compact default Post category/tag archive
 * Match the information-content list scale and density.
 * ========================================================= */
body.archive .snf-post-archive{
  width:min(1180px,calc(100% - 40px));
  padding:42px 0 70px;
}
body.archive .snf-post-archive-head{
  margin-bottom:28px;
}
body.archive .snf-post-archive-head h1{
  font-size:34px;
}
body.archive .snf-post-archive-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
body.archive .snf-post-archive-card{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  min-height:190px;
  border-radius:18px;
  box-shadow:0 5px 20px rgba(29,55,46,.045);
}
body.archive .snf-post-archive-thumb{
  aspect-ratio:auto;
  min-height:190px;
  height:100%;
}
body.archive .snf-post-archive-thumb img{
  min-height:190px;
  height:100%;
}
body.archive .snf-post-archive-body{
  min-width:0;
  padding:20px;
  display:flex;
  flex-direction:column;
}
body.archive .snf-post-archive-meta{
  margin-bottom:9px;
}
body.archive .snf-post-archive-card h2{
  font-size:20px;
  line-height:1.35;
}
body.archive .snf-post-archive-excerpt{
  margin-top:8px;
  font-size:14px;
  line-height:1.65;
}
body.archive .snf-post-archive-more{
  margin-top:auto;
  padding-top:15px;
}
@media (max-width:900px){
  body.archive .snf-post-archive-grid{grid-template-columns:1fr;}
}
@media (max-width:640px){
  body.archive .snf-post-archive{width:calc(100% - 28px);padding:28px 0 50px;}
  body.archive .snf-post-archive-head{margin-bottom:22px;}
  body.archive .snf-post-archive-head h1{font-size:28px;}
  body.archive .snf-post-archive-grid{gap:14px;}
  body.archive .snf-post-archive-card{
    grid-template-columns:112px minmax(0,1fr);
    min-height:140px;
    border-radius:14px;
  }
  body.archive .snf-post-archive-thumb,
  body.archive .snf-post-archive-thumb img{
    min-height:140px;
  }
  body.archive .snf-post-archive-body{padding:14px;}
  body.archive .snf-post-archive-meta{margin-bottom:6px;font-size:11px;}
  body.archive .snf-post-archive-card h2{font-size:17px;line-height:1.4;}
  body.archive .snf-post-archive-excerpt{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin-top:5px;
    font-size:13px;
    line-height:1.55;
  }
  body.archive .snf-post-archive-more{padding-top:8px;margin-top:auto;font-size:12px;}
}

/* Premium 1606: emphasize delivery photo/SMS notice in order submit summary */
.order-submit strong{font-size:16px;font-weight:800;letter-spacing:-.025em;color:var(--ink);margin-top:2px;}


/* Premium 1608: show delivery photo/SMS assurance in mobile sticky order bar */
@media (max-width:520px){
  .order-submit{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    align-items:center;
    padding:10px 12px;
  }
  .order-submit>div{
    display:block!important;
    text-align:center;
    line-height:1.35;
  }
  .order-submit small{
    display:block!important;
    font-size:10px;
    font-weight:400;
    color:var(--muted);
    margin:0 0 2px;
  }
  .order-submit strong{
    display:block!important;
    font-size:14px;
    line-height:1.35;
    font-weight:800;
    color:var(--ink);
    margin:0;
    word-break:keep-all;
  }
  .order-submit .order-live-total{
    display:flex!important;
    align-items:baseline;
    justify-content:center;
    gap:7px;
    margin-top:4px;
    font-size:11px;
    color:var(--muted);
  }
  .order-submit .order-live-total b{
    font-size:16px;
    color:var(--ink);
  }
  .order-submit button{
    width:100%;
    height:48px;
    min-height:48px;
    font-size:15px;
  }
}

/* v1.6.09 — hero 아래 독립 통합검색 섹션 */
.home-top-search{
  border-top:1px solid #ece8df;
  border-bottom:1px solid #ece8df;
  background:#faf9f6;
}
.home-top-search .home-facility-search{
  padding-top:46px;
  padding-bottom:46px;
}
@media(max-width:760px){
  .home-top-search .home-facility-search{
    padding-top:30px;
    padding-bottom:30px;
  }
  .home-top-search .home-search-copy h2{
    font-size:25px;
    line-height:1.28;
  }
  .home-top-search .home-search-copy p{
    font-size:12px;
    line-height:1.55;
  }
}

/* v1.6.12 — 메인 통합검색 PC 폭 600px + 구매 안내문구 */
.home-top-search .home-facility-search-form{
  width:100%;
  max-width:600px;
  justify-self:end;
  box-sizing:border-box;
}
.home-top-search .home-facility-search-form input,
.home-top-search .home-facility-search-form button{
  box-sizing:border-box;
}
.home-top-search .home-facility-search-form input{
  min-width:0;
  width:100%;
}
.home-top-search .home-facility-search-form button,
.sl-search-box button{
  background:#17231f;
  border-left-color:#17231f;
}
.home-top-search .home-facility-search-form button:hover,
.sl-search-box button:hover{
  background:#0f1714;
}
@media(max-width:760px){
  .home-top-search .home-facility-search{
    padding-left:18px;
    padding-right:18px;
  }
  .home-top-search .home-facility-search-form{
    max-width:100%;
    width:100%;
    grid-template-columns:minmax(0,1fr) 72px;
    justify-self:stretch;
    overflow:hidden;
  }
  .home-top-search .home-facility-search-form input{
    min-width:0;
    width:100%;
    padding-left:12px;
    padding-right:8px;
  }
  .home-top-search .home-facility-search-form button{
    width:72px;
    min-width:72px;
    padding:0;
  }
}


/* v1.6.13 — PC hero compact + home integrated-search real form width 550px */
@media(min-width:761px){
  body.home .premium-hero .hero-inner{
    min-height:350px!important;
    padding-top:36px!important;
    padding-bottom:36px!important;
  }

  .home-top-search .home-facility-search{
    grid-template-columns:minmax(0,1fr) 550px!important;
  }

  .home-top-search .home-facility-search-form{
    width:550px!important;
    max-width:550px!important;
    min-width:0!important;
    justify-self:end!important;
    flex:none!important;
  }
}

@media(max-width:760px){
  .home-top-search .home-facility-search-form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
  }
}


/* v1.6.14 — PC hero 실제 높이 축소 + 메인 통합검색 실제 전체폭 470px */
@media(min-width:761px){
  body.home .premium-hero .hero-inner{
    min-height:0!important;
    padding-top:24px!important;
    padding-bottom:24px!important;
    row-gap:0!important;
    align-items:center!important;
  }
  body.home .premium-hero .hero-art img{
    width:240px!important;
    max-width:240px!important;
  }
  body.home .premium-hero .hero-actions{
    margin-top:12px!important;
  }

  .home-top-search .home-facility-search{
    grid-template-columns:minmax(0,1fr) 470px!important;
  }
  .home-top-search .home-facility-search-form{
    width:470px!important;
    max-width:470px!important;
    min-width:470px!important;
    justify-self:end!important;
  }
  .home-top-search .home-facility-search-form input{
    min-width:0!important;
    width:auto!important;
  }
}

@media(max-width:760px){
  .home-top-search .home-facility-search-form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}


/* v1.6.15 — home search exact 470px + purchase guide lock */
@media(min-width:761px){
  body.home .home-top-search .home-facility-search{
    grid-template-columns:minmax(0,1fr) 470px!important;
  }
  body.home .home-top-search form.home-facility-search-form{
    width:470px!important;
    max-width:470px!important;
    min-width:470px!important;
    flex:0 0 470px!important;
    justify-self:end!important;
    justify-content:stretch!important;
  }
}
@media(max-width:760px){
  body.home .home-top-search form.home-facility-search-form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:1 1 auto!important;
  }
}


/* v1.6.16 — 메인 통합검색 폼을 오른쪽 끝에서 왼쪽으로 당겨 제목과 한 덩어리로 보이게 조정 */
@media(min-width:761px){
  body.home .home-top-search .home-facility-search{
    grid-template-columns:minmax(0,540px) 470px!important;
    gap:40px!important;
    justify-content:start!important;
  }
  body.home .home-top-search form.home-facility-search-form{
    justify-self:start!important;
  }
}


/* v1.6.17 — 모바일 메인: 통합검색 제목 자동축소/한줄 유지 + 검색창 높이 축소 + 히어로 브랜드 제목 가독성 강화 */
@media(max-width:760px){
  body.home .home-top-search .home-search-copy h2{
    font-size:clamp(15px,4.2vw,18px)!important;
    line-height:1.2!important;
    letter-spacing:-.055em!important;
    white-space:nowrap!important;
    word-break:keep-all!important;
  }

  body.home .home-top-search .home-facility-search{
    padding-top:24px!important;
    padding-bottom:24px!important;
    gap:15px!important;
  }

  body.home .home-top-search form.home-facility-search-form{
    min-height:46px!important;
    height:46px!important;
    grid-template-columns:minmax(0,1fr) 68px!important;
  }
  body.home .home-top-search form.home-facility-search-form input{
    height:44px!important;
    min-height:44px!important;
    padding:0 10px!important;
    font-size:12.5px!important;
  }
  body.home .home-top-search form.home-facility-search-form button{
    width:68px!important;
    min-width:68px!important;
    height:44px!important;
    min-height:44px!important;
    font-size:12px!important;
    padding:0!important;
  }
}

@media(max-width:520px){
  body.home .premium-hero h1::before{
    font-size:clamp(18.5px,5.6vw,21px)!important;
    line-height:1.16!important;
    font-weight:650!important;
    letter-spacing:-.06em!important;
    color:#151815!important;
  }
  body.home .premium-hero h1 span{
    font-size:clamp(25px,7.7vw,29px)!important;
    line-height:1.06!important;
    font-weight:650!important;
    letter-spacing:-.06em!important;
    color:#284b38!important;
  }
}

@media(max-width:360px){
  body.home .home-top-search .home-search-copy h2{
    font-size:14.5px!important;
  }
  body.home .premium-hero h1::before{
    font-size:18px!important;
  }
  body.home .premium-hero h1 span{
    font-size:24.5px!important;
  }
}


/* v1.6.18 — 메인 독립 통합검색 제거, 기존 CTA 자리에 보조형 시설검색 배치 */
body.home .premium-hero .hero-facility-quick-search form{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 64px!important;
  width:360px!important;
  max-width:100%!important;
  height:40px!important;
  margin:0!important;
  border:1px solid #d8d3ca!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.home .premium-hero .hero-facility-quick-search input{
  width:100%!important;
  min-width:0!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 12px!important;
  border:0!important;
  outline:0!important;
  background:#fff!important;
  color:#222!important;
  font-size:12px!important;
}
body.home .premium-hero .hero-facility-quick-search button{
  width:64px!important;
  min-width:64px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  border:0!important;
  background:#171916!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:700!important;
  cursor:pointer!important;
}
@media(min-width:521px){
  body.home .premium-hero .hero-facility-quick-search{
    width:360px!important;
    max-width:100%!important;
    margin-top:16px!important;
  }
}
@media(max-width:520px){
  body.home .premium-hero .hero-inner{
    grid-template-rows:auto auto!important;
    row-gap:13px!important;
  }
  body.home .premium-hero .hero-side{
    display:contents!important;
  }
  body.home .premium-hero .hero-art{
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    width:clamp(102px,31vw,118px)!important;
    justify-self:end!important;
  }
  body.home .premium-hero .hero-facility-quick-search{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
  }
  body.home .premium-hero .hero-facility-quick-search form{
    width:100%!important;
    height:38px!important;
    grid-template-columns:minmax(0,1fr) 60px!important;
  }
  body.home .premium-hero .hero-facility-quick-search input{
    height:36px!important;
    min-height:36px!important;
    padding:0 10px!important;
    font-size:11.5px!important;
  }
  body.home .premium-hero .hero-facility-quick-search button{
    width:60px!important;
    min-width:60px!important;
    height:36px!important;
    min-height:36px!important;
    font-size:10.5px!important;
  }
}


/* v1.6.21 — restore approved 1.6.18 hero geometry; keep unified example placeholder.
   Desktop: right logo alignment preserved. Mobile: logo remains top-right, search is one full-width row below. */

/* v1.6.22 — one shared hero for Home + Flower Info. One DOM, one geometry. */
#snf-unified-site-hero .hero-inner{
  max-width:var(--max)!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:24px 22px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 240px!important;
  grid-template-areas:"copy art" "actions art"!important;
  column-gap:64px!important;
  row-gap:0!important;
  align-items:center!important;
}
#snf-unified-site-hero .hero-copy{grid-area:copy!important;min-width:0!important;}
#snf-unified-site-hero .hero-side{display:contents!important;}
#snf-unified-site-hero .hero-art{
  grid-area:art!important;
  width:240px!important;
  height:auto!important;
  justify-self:end!important;
  align-self:center!important;
  margin:0!important;
  padding:0!important;
}
#snf-unified-site-hero .hero-art img{width:240px!important;max-width:240px!important;height:auto!important;margin:0!important;}
#snf-unified-site-hero .hero-facility-quick-search{
  grid-area:actions!important;
  width:360px!important;
  max-width:100%!important;
  justify-self:start!important;
  align-self:start!important;
  margin:12px 0 0!important;
  padding:0!important;
}
#snf-unified-site-hero .hero-facility-quick-search form{display:grid!important;grid-template-columns:minmax(0,1fr) 64px!important;width:360px!important;max-width:100%!important;height:40px!important;margin:0!important;border:1px solid #d8d3ca!important;background:#fff!important;box-shadow:none!important;}
#snf-unified-site-hero .hero-facility-quick-search input{width:100%!important;min-width:0!important;height:38px!important;min-height:38px!important;padding:0 12px!important;border:0!important;outline:0!important;background:#fff!important;color:#222!important;font-size:12px!important;}
#snf-unified-site-hero .hero-facility-quick-search button{width:64px!important;min-width:64px!important;height:38px!important;min-height:38px!important;padding:0!important;border:0!important;background:#171916!important;color:#fff!important;font-size:11px!important;font-weight:700!important;cursor:pointer!important;}
@media(max-width:520px){
  #snf-unified-site-hero .hero-inner{grid-template-columns:minmax(0,1fr) clamp(102px,31vw,118px)!important;grid-template-rows:auto auto!important;grid-template-areas:"copy art" "search search"!important;column-gap:clamp(9px,3vw,14px)!important;row-gap:13px!important;align-items:center!important;padding:clamp(22px,7vw,28px) 13px clamp(20px,6vw,25px)!important;}
  #snf-unified-site-hero .hero-copy{grid-area:copy!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;align-self:center!important;}
  #snf-unified-site-hero .hero-side{display:contents!important;}
  #snf-unified-site-hero .hero-art{grid-area:art!important;width:clamp(102px,31vw,118px)!important;height:auto!important;aspect-ratio:1/1!important;margin:0!important;padding:7px!important;justify-self:end!important;align-self:center!important;transform:none!important;border-radius:clamp(20px,6vw,25px)!important;}
  #snf-unified-site-hero .hero-art img{width:100%!important;max-width:none!important;height:auto!important;margin:0!important;border-radius:18px!important;}
  #snf-unified-site-hero .hero-facility-quick-search{grid-area:search!important;display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;transform:none!important;}
  #snf-unified-site-hero .hero-facility-quick-search form{grid-template-columns:minmax(0,1fr) 60px!important;width:100%!important;max-width:none!important;height:38px!important;}
  #snf-unified-site-hero .hero-facility-quick-search input{height:36px!important;min-height:36px!important;padding:0 10px!important;font-size:11.5px!important;}
  #snf-unified-site-hero .hero-facility-quick-search button{width:60px!important;min-width:60px!important;height:36px!important;min-height:36px!important;font-size:10.5px!important;}
  #snf-unified-site-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;}
  #snf-unified-site-hero h1{margin:0!important;font-size:0!important;line-height:1!important;}
  #snf-unified-site-hero h1::before{content:"[정품] 화환전문점"!important;display:block!important;white-space:nowrap!important;font-size:clamp(18.5px,5.6vw,21px)!important;line-height:1.16!important;letter-spacing:-.06em!important;font-weight:650!important;color:#151815!important;}
  #snf-unified-site-hero h1 span{display:block!important;margin-top:4px!important;white-space:nowrap!important;font-size:clamp(25px,7.7vw,29px)!important;line-height:1.06!important;letter-spacing:-.06em!important;font-weight:650!important;color:#284b38!important;}
  #snf-unified-site-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;}
}
@media(max-width:360px){
 #snf-unified-site-hero h1::before{font-size:18px!important;}
 #snf-unified-site-hero h1 span{font-size:24.5px!important;}
}

/* v1.6.23 — shared hero mobile logo visibility on non-home pages
   Base mobile CSS hides .hero-art globally; the homepage had its own display:flex override,
   while /flower-info/ did not. Keep desktop untouched and only restore the shared hero art. */
@media(max-width:520px){
  #snf-unified-site-hero .hero-art{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  #snf-unified-site-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;
  }
}

/* v1.6.24 — 모바일 시설검색창 높이/두께를 메인 히어로 검색창 기준으로 통일 */
@media(max-width:760px){
  .sl-search-box,
  .home-facility-search-form,
  .inline-facility-search{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 60px!important;
    gap:0!important;
    width:100%!important;
    max-width:none!important;
    height:38px!important;
    min-height:38px!important;
    margin-left:0!important;
    margin-right:0!important;
    border:1px solid #d8d3ca!important;
    border-radius:0!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .sl-search-box input,
  .home-facility-search-form input,
  .inline-facility-search input{
    width:100%!important;
    min-width:0!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 10px!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    outline:0!important;
    background:#fff!important;
    box-shadow:none!important;
    font-size:11.5px!important;
    font-weight:400!important;
    line-height:36px!important;
  }
  .sl-search-box input:focus,
  .home-facility-search-form input:focus,
  .inline-facility-search input:focus{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
  }
  .sl-search-box button,
  .home-facility-search-form button,
  .inline-facility-search button{
    width:60px!important;
    min-width:60px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:#171916!important;
    color:#fff!important;
    font-size:10.5px!important;
    font-weight:700!important;
    line-height:36px!important;
    box-shadow:none!important;
  }
}


/* v1.6.25 — 모바일 시설검색 예시문구를 모든 심플 검색창에 동일 표시 */
@media(max-width:760px){
  #snf-unified-site-hero .hero-facility-quick-search input::placeholder,
  .sl-search-box input::placeholder,
  .home-facility-search-form input::placeholder,
  .inline-facility-search input::placeholder{
    color:#8a8a86!important;
    opacity:1!important;
    font-size:11.5px!important;
    font-weight:400!important;
  }
}


/* v1.6.47 — mobile readability + restore facility homepage icon visibility */
.sl-site-home{
  visibility:visible!important;
  opacity:1!important;
}
.sl-site-home svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  visibility:visible!important;
  opacity:1!important;
}
.sl-site-home svg path{
  stroke:currentColor!important;
  stroke-width:2.1!important;
}

@media(max-width:760px){
  body{font-size:15px;}

  /* Search text was too small on phones. */
  .sl-search-box input,
  .home-facility-search-form input,
  .inline-facility-search input,
  #snf-unified-site-hero .hero-facility-quick-search input{
    font-size:14.5px!important;
    font-weight:500!important;
  }
  .sl-search-box input::placeholder,
  .home-facility-search-form input::placeholder,
  .inline-facility-search input::placeholder,
  #snf-unified-site-hero .hero-facility-quick-search input::placeholder{
    font-size:14px!important;
  }
  .sl-search-box button,
  .home-facility-search-form button,
  .inline-facility-search button,
  #snf-unified-site-hero .hero-facility-quick-search button{
    font-size:12.5px!important;
  }

  /* Overall customer-facing mobile typography. */
  .page-title p,
  .sl-search-hero>p,
  .sl-section-head p{font-size:14.5px!important;line-height:1.65!important;}
  .sl-search-hint{font-size:13px!important;line-height:1.55!important;}
  .sl-search-stats span{font-size:13.5px!important;}
  .sl-region-main small{font-size:12.5px!important;}
  .sl-region-main strong{font-size:17px!important;line-height:1.4!important;}
  .sl-region-main em{font-size:14px!important;line-height:1.5!important;}
  .sl-place-card-top strong{font-size:16.5px!important;}
  .sl-place-location{font-size:13.5px!important;}
  .sl-place-address,.sl-place-go{font-size:13px!important;line-height:1.5!important;}
  .sl-rec-main span{font-size:12px!important;}
  .sl-rec-main strong{font-size:16.5px!important;}
  .sl-rec-main small{font-size:13px!important;line-height:1.5!important;}
  .sl-region-links button{font-size:13.5px!important;}
  .sl-filter-tabs button{font-size:13.5px!important;}
  .facility-homepage-link{font-size:14px!important;}

  #snf-unified-site-hero .hero-copy>p{
    font-size:12.5px!important;
    line-height:1.65!important;
  }
  #snf-unified-site-hero .eyebrow{font-size:9.5px!important;}

  /* Keep the house icon clearly visible even when its text label is hidden. */
  .sl-site-home{
    display:inline-flex!important;
    right:10px!important;
    top:10px!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    color:#203029!important;
    background:#fff!important;
    border:1px solid #d4d4d4!important;
    z-index:5!important;
  }
  .sl-site-home span{display:none!important;}
}


/* v1.6.49 — 주문서 단계 제목/필수항목 가독성 강화 */
.order-form .order-section .order-num{
  width:48px!important;height:48px!important;min-width:48px!important;
  border-radius:12px!important;font-size:16px!important;font-weight:900!important;
  box-shadow:0 3px 10px rgba(24,33,38,.16)!important;
}
.order-form .order-section .order-content>h2{
  font-size:27px!important;font-weight:900!important;letter-spacing:-.04em!important;
  line-height:1.25!important;margin:2px 0 7px!important;color:#11191d!important;
}
.order-form label:has(input[required]),
.order-form label:has(select[required]){
  padding:11px!important;border:2px solid #20272b!important;border-radius:12px!important;
  background:#fff!important;box-sizing:border-box!important;
}
.order-form label:has(input[required])>input,
.order-form label:has(select[required])>select{
  border:2px solid #8d9490!important;
}
.order-form label>em{
  border:2px solid #11181c!important;padding:2px 7px!important;font-weight:900!important;
}
@media(max-width:640px){
  .order-form .order-section .order-num{
    width:42px!important;height:42px!important;min-width:42px!important;font-size:15px!important;
  }
  .order-form .order-section .order-content>h2{font-size:24px!important;margin-top:0!important}
  .order-form label:has(input[required]),
  .order-form label:has(select[required]){border-width:2.5px!important;padding:11px!important}
}

/* v1.6.50 — 필수 라벨은 평면 유지, 실제 입력칸만 진하게 강조 */
.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;
  box-shadow:none!important;
}
.order-form label:has(input[required])>input,
.order-form label:has(select[required])>select{
  width:100%!important;
  margin-top:7px!important;
  border:2px solid #30383c!important;
  border-radius:0!important;
  background:#fff!important;
  box-sizing:border-box!important;
}
.order-form label>em{
  display:inline-flex!important;
  vertical-align:middle!important;
  margin-left:6px!important;
  white-space:nowrap!important;
}


/* v1.6.56 — 모바일 상단 글자 실제 확대 + 좁은 화면만 자동축소
   1.6.54 정상본 기준. 상호명/전화번호를 키우되 320px 이하에서만 완만하게 축소합니다. */
@media (max-width:720px){
  .site-header .header-inner{
    height:60px!important;
    padding-left:clamp(4px,1.5vw,8px)!important;
    padding-right:clamp(3px,1.2vw,7px)!important;
    gap:clamp(2px,.8vw,4px)!important;
  }
  .site-header .brand-cluster{
    gap:clamp(2px,.8vw,4px)!important;
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:visible!important;
  }
  .site-header .brand{
    gap:clamp(3px,1vw,5px)!important;
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:visible!important;
  }
  .site-header .brand-logo{
    width:clamp(32px,8.8vw,38px)!important;
    height:clamp(32px,8.8vw,38px)!important;
    flex:0 0 clamp(32px,8.8vw,38px)!important;
  }
  .site-header .brand>span{min-width:0!important;overflow:visible!important;}
  .site-header .brand b{
    display:block!important;
    font-size:clamp(17px,5vw,21px)!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.07em!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  .site-header .brand small{display:none!important;}
  .site-header .brand-phone{
    display:inline-flex!important;
    align-items:center!important;
    gap:clamp(2px,.7vw,4px)!important;
    flex:0 0 auto!important;
    min-width:0!important;
    padding-left:0!important;
    margin:0!important;
    border-left:0!important;
    white-space:nowrap!important;
  }
  .site-header .brand-phone:before{
    width:clamp(16px,4.4vw,20px)!important;
    height:clamp(16px,4.4vw,20px)!important;
    flex:0 0 clamp(16px,4.4vw,20px)!important;
    font-size:clamp(9px,2.5vw,11px)!important;
  }
  .site-header .brand-phone strong{
    display:block!important;
    font-size:clamp(15px,4.5vw,19px)!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.065em!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-menu-btn{
    width:clamp(24px,6.8vw,30px)!important;
    min-width:clamp(24px,6.8vw,30px)!important;
    flex:0 0 clamp(24px,6.8vw,30px)!important;
    height:42px!important;
    margin-left:clamp(2px,.7vw,4px)!important;
    padding:0!important;
    font-size:clamp(20px,5.5vw,23px)!important;
  }
  .site-header .mobile-nav{top:60px!important;}
}

/* 320px급 초소형 화면에서만 살짝 축소 — 기존 1.6.54보다 여전히 크게 */
@media (max-width:320px){
  .site-header .brand-logo{width:30px!important;height:30px!important;flex-basis:30px!important;}
  .site-header .brand b{font-size:16.5px!important;letter-spacing:-.075em!important;}
  .site-header .brand-phone strong{font-size:14.5px!important;letter-spacing:-.07em!important;}
  .site-header .brand-phone:before{width:15px!important;height:15px!important;flex-basis:15px!important;font-size:8px!important;}
  .site-header .mobile-menu-btn{width:23px!important;min-width:23px!important;flex-basis:23px!important;margin-left:1px!important;}
}


/* v1.6.57 — 모바일 헤더: 로고보다 상호명/전화번호를 확실히 확대, 폭이 좁을 때만 자동 축소 */
@media (max-width:720px){
  .site-header .header-inner{
    height:60px!important;
    padding-left:clamp(5px,1.5vw,8px)!important;
    padding-right:clamp(3px,1vw,6px)!important;
    gap:clamp(2px,.7vw,4px)!important;
  }
  .site-header .brand-cluster{
    display:flex!important;
    align-items:center!important;
    gap:clamp(3px,.9vw,5px)!important;
    min-width:0!important;
    flex:1 1 auto!important;
  }
  .site-header .brand{
    display:flex!important;
    align-items:center!important;
    gap:clamp(3px,.8vw,5px)!important;
    min-width:0!important;
    flex:0 1 auto!important;
  }
  /* 로고는 공간을 덜 차지하게 유지하고 글자를 우선 확대 */
  .site-header .brand-logo{
    width:clamp(30px,8vw,34px)!important;
    height:clamp(30px,8vw,34px)!important;
    flex:0 0 clamp(30px,8vw,34px)!important;
  }
  .site-header .brand>span{min-width:0!important;overflow:visible!important;}
  .site-header .brand b{
    font-size:clamp(18.5px,5.35vw,22px)!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.085em!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(2px,.6vw,3px)!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{
    width:clamp(16px,4.2vw,19px)!important;
    height:clamp(16px,4.2vw,19px)!important;
    flex:0 0 clamp(16px,4.2vw,19px)!important;
  }
  .site-header .brand-phone strong{
    font-size:clamp(16px,4.6vw,19px)!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.07em!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-menu-btn{
    width:clamp(24px,6.6vw,28px)!important;
    min-width:clamp(24px,6.6vw,28px)!important;
    flex:0 0 clamp(24px,6.6vw,28px)!important;
    height:42px!important;
    margin-left:clamp(1px,.5vw,3px)!important;
    padding:0!important;
    font-size:22px!important;
  }
  .site-header .mobile-nav{top:60px!important;}
}
/* 350px 이하에서만 자동 축소 */
@media (max-width:350px){
  .site-header .brand-logo{width:29px!important;height:29px!important;flex-basis:29px!important;}
  .site-header .brand b{font-size:17.5px!important;letter-spacing:-.09em!important;}
  .site-header .brand-phone strong{font-size:15px!important;letter-spacing:-.075em!important;}
  .site-header .brand-phone:before{width:15px!important;height:15px!important;flex-basis:15px!important;}
  .site-header .mobile-menu-btn{width:23px!important;min-width:23px!important;flex-basis:23px!important;font-size:21px!important;}
}

/* v1.6.61 — 1.6.57 크기 복원 + 상호명/전화 간격 + 삼선 확실히 좌측 이동 */
@media (max-width:720px){
  /* 1.6.57에서 성공한 크기는 그대로 유지하고, 배치만 조정 */
  .site-header .header-inner{
    padding-left:clamp(5px,1.5vw,8px)!important;
    padding-right:clamp(2px,.7vw,4px)!important;
    gap:0!important;
  }
  .site-header .brand-cluster{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    gap:clamp(7px,1.8vw,10px)!important;
    overflow:visible!important;
  }
  .site-header .brand{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
  }
  .site-header .brand-logo{
    width:clamp(30px,8vw,34px)!important;
    height:clamp(30px,8vw,34px)!important;
    flex:0 0 clamp(30px,8vw,34px)!important;
  }
  .site-header .brand b{
    font-size:clamp(18.5px,5.35vw,22px)!important;
    letter-spacing:-.085em!important;
  }
  .site-header .brand-phone{
    flex:0 0 auto!important;
    margin-left:0!important;
  }
  .site-header .brand-phone strong{
    font-size:clamp(16px,4.6vw,19px)!important;
    letter-spacing:-.07em!important;
  }
  /* 메뉴는 레이아웃 폭을 건드리지 않고 눈에 보이게 7px 좌측 이동 */
  .site-header .mobile-menu-btn{
    margin-left:auto!important;
    margin-right:0!important;
    transform:translateX(-7px)!important;
  }
}
/* 좁은 폰에서는 간격만 조금 줄이고 1.6.57 자동축소 규칙은 그대로 둠 */
@media (max-width:370px){
  .site-header .brand-cluster{gap:5px!important;}
  .site-header .mobile-menu-btn{transform:translateX(-5px)!important;}
}
@media (max-width:340px){
  .site-header .brand-cluster{gap:3px!important;}
  .site-header .mobile-menu-btn{transform:translateX(-4px)!important;}
}


/* v1.6.62 — final: keep 1.6.61 sizes, only open brand-to-phone spacing */
@media (max-width:720px){
  .site-header .brand-cluster{gap:clamp(11px,3vw,14px)!important;}
}
@media (max-width:370px){
  .site-header .brand-cluster{gap:9px!important;}
}
@media (max-width:340px){
  .site-header .brand-cluster{gap:7px!important;}
}

/* v1.6.63 — final: keep 1.6.62 exactly, move only hamburger slightly left */
@media (max-width:720px){
  .site-header .mobile-menu-btn{transform:translateX(-10px)!important;}
}
@media (max-width:370px){
  .site-header .mobile-menu-btn{transform:translateX(-8px)!important;}
}
@media (max-width:340px){
  .site-header .mobile-menu-btn{transform:translateX(-7px)!important;}
}

/* v1.6.76 — 주문 단계 번호와 제목을 한 줄에 배치 + 리본 문구 2줄 진하게 */
.order-form .order-section{
  grid-template-columns:48px minmax(0,1fr)!important;
  column-gap:14px!important;
  align-items:start!important;
}
.order-form .order-section>.order-content{display:contents!important;}
.order-form .order-section>.order-num{
  grid-column:1!important;
  grid-row:1!important;
  align-self:center!important;
}
.order-form .order-section>.order-content>h2{
  grid-column:2!important;
  grid-row:1!important;
  align-self:center!important;
  margin:0!important;
}
.order-form .order-section>.order-content>*:not(h2){
  grid-column:1 / -1!important;
}
.order-form .selected-product-options h3,
.order-form .ribbon-info-row>label{
  font-weight:900!important;
  color:#11191d!important;
}
.order-form .ribbon-info-row select,
.order-form .ribbon-info-row input{
  font-weight:800!important;
  color:#111!important;
}
@media(max-width:640px){
  .order-form .order-section{
    grid-template-columns:42px minmax(0,1fr)!important;
    column-gap:12px!important;
  }
  .order-form .order-section>.order-content>h2{
    font-size:24px!important;
    line-height:1.15!important;
  }
  .order-form .selected-product-options h3,
  .order-form .ribbon-info-row>label{
    font-weight:900!important;
  }
}


/* v1.6.77 — 리본 제목 정확화 + 경조사어 선택박스 내부 '더보기' + 예시문구 원복 */
.order-form .ribbon-select-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
}
.order-form .ribbon-select-wrap .ribbon-phrase-select{
  width:100%!important;
  padding-right:88px!important;
}
.order-form .ribbon-select-more{
  position:absolute!important;
  right:34px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  font-size:13px!important;
  line-height:1!important;
  font-weight:800!important;
  color:#11191d!important;
  pointer-events:none!important;
  white-space:nowrap!important;
  z-index:2!important;
}
.order-form .ribbon-info-row input::placeholder{
  font-weight:400!important;
  color:#8a8a8a!important;
  opacity:1!important;
}
@media(max-width:640px){
  .order-form .ribbon-select-more{right:32px!important;font-size:12px!important;}
  .order-form .ribbon-select-wrap .ribbon-phrase-select{padding-right:82px!important;}
}

/* v1.6.78 — 주문 입력/선택 박스 테두리 통일 */
.order-form .ribbon-select-wrap .ribbon-phrase-select,
.order-form input[name="sender_text[]"],
.order-form input[name^="sender_text["],
.order-form input[name="recipient_phone"],
.order-form .delivery-date-trigger,
.order-form #delivery-time-clock{
  border:1px solid #263238!important;
  box-sizing:border-box!important;
}

/* v1.6.79 — 주문자/받는 분 2열 입력행 수평 정렬 */
@media(min-width:901px){
  .order-form #order-write-start .field-grid > label > small:not(.delivery-photo-note){
    display:inline-flex!important;
    align-items:center!important;
    min-height:22px!important;
    line-height:1!important;
    vertical-align:middle!important;
    margin-left:4px!important;
  }
  .order-form #order-write-start .field-grid > label > input{
    margin-top:7px!important;
  }
}


/* v1.6.80 — 모바일 경조사어: '더보기' 제거 + 진한 드롭다운 기호 */
.order-form .ribbon-select-more{display:none!important;}
.order-form .ribbon-select-wrap .ribbon-phrase-select{
  padding-right:42px!important;
  -webkit-appearance:none!important;
  appearance:none!important;
  background-color:#fff!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='12' viewBox='0 0 18 12'%3E%3Cpath d='M2 2.5L9 9.5L16 2.5' fill='none' stroke='%2311191d' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:right 13px center!important;
  background-size:16px 11px!important;
}
@media(max-width:640px){
  .order-form .ribbon-select-wrap .ribbon-phrase-select{
    padding-right:38px!important;
    background-position:right 11px center!important;
    background-size:15px 10px!important;
  }
}


/* v1.6.81 — 모바일 배송시간 입력칸 확대: '최대한 빠르게' 영역 축소 */
@media(max-width:430px){
  .order-form .delivery-time-inline{
    grid-template-columns:minmax(0,1fr) 112px!important;
    gap:6px!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    min-width:0!important;
    width:112px!important;
    padding:6px 7px!important;
    gap:5px!important;
  }
  .order-form .delivery-time-inline .asap-choice input{
    width:16px!important;
    height:16px!important;
    min-width:16px!important;
  }
  .order-form .delivery-time-inline .asap-choice strong{
    font-size:11px!important;
    letter-spacing:-.04em!important;
  }
  .order-form .delivery-time-inline .asap-choice small{
    font-size:8.5px!important;
    letter-spacing:-.04em!important;
  }
  .order-form #delivery-time-clock{
    padding-left:12px!important;
    padding-right:10px!important;
    font-size:13px!important;
  }
}
@media(max-width:370px){
  .order-form .delivery-time-inline{
    grid-template-columns:minmax(0,1fr) 104px!important;
    gap:5px!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    width:104px!important;
    padding:6px 5px!important;
  }
  .order-form .delivery-time-inline .asap-choice strong{font-size:10.5px!important;}
  .order-form .delivery-time-inline .asap-choice small{font-size:8px!important;}
}


/* v1.6.82 — 모바일 선택상품 상품명 2줄 표시 */
@media(max-width:640px){
  .selected-summary-titleline{align-items:flex-start!important;}
  .selected-summary-titleline strong{
    display:-webkit-box!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:ellipsis;
    line-height:1.35;
    max-height:2.7em;
    overflow-wrap:anywhere;
  }
}

/* v1.6.83 — 모바일 선택상품명: 가격 때문에 제목 폭이 줄지 않도록 2줄 전체폭 확보 */
@media(max-width:640px){
  .selected-summary-titleline{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    gap:2px 0!important;
  }
  .selected-summary-titleline strong{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:0!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    line-height:1.35!important;
    max-height:2.7em!important;
    overflow-wrap:anywhere!important;
  }
  .selected-summary-titleline b{
    flex:0 0 100%!important;
    width:100%!important;
    margin-top:1px!important;
    font-size:13px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
  }
}

/* v1.6.85 — mobile: hide duplicated unit-price × quantity line in selected product summary */
@media (max-width:640px){
  .selected-products-summary .selected-summary-item .selected-summary-copy > small{display:none!important}
}

/* v1.6.87 — facility product order destination autofill notice */
.facility-order-autofill-notice{margin:0 0 18px;padding:12px 15px;border:1px solid #f0dfe5;border-radius:10px;background:#fff8fa;color:#5d3f49;font-size:14px;font-weight:700;line-height:1.55}
.facility-order-autofill-notice span{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:6px;border-radius:50%;background:#a94b68;color:#fff;font-size:12px;vertical-align:-2px}
@media(max-width:767px){.facility-order-autofill-notice{margin-bottom:14px;padding:11px 12px;font-size:13px;line-height:1.5}}


/* v1.6.89 - facility information: remove redundant region/admin-dong column; desktop 6-column row */
@media (min-width: 801px){
  .facility-info-grid-v1688{
    display:grid!important;
    grid-template-columns:minmax(300px,1.65fr) minmax(170px,.95fr) minmax(100px,.55fr) minmax(100px,.55fr) minmax(115px,.65fr) minmax(100px,.55fr)!important;
    border:1px solid #ddd!important;
    border-radius:14px;
    overflow:hidden;
  }
  .facility-info-grid-v1688>div{
    min-height:118px!important;
    padding:20px 18px!important;
    border:0!important;
    border-right:1px solid #ddd!important;
  }
  .facility-info-grid-v1688>div:nth-child(6){border-right:0!important}
  .facility-info-grid-v1688 .facility-info-website{grid-column:1/-1;border-top:1px solid #ddd!important;border-right:0!important;min-height:auto!important}
}
.facility-info-grid-v1688 dt{display:flex;align-items:center;gap:7px}
.facility-info-grid-v1688 .facility-info-icon{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;color:#ef3f72;font-size:17px;font-weight:800;line-height:1;flex:0 0 19px}
.facility-info-grid-v1688 .facility-info-phone-link{display:inline-flex;align-items:center}
.facility-info-grid-v1688 .facility-info-phone-link svg{display:none!important}
@media (max-width:800px){
  .facility-info-grid-v1688{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .facility-info-grid-v1688>div{min-width:0;min-height:88px!important;padding:14px 13px!important}
  .facility-info-grid-v1688 .facility-info-address,
  .facility-info-grid-v1688 .facility-info-phone{grid-column:1/-1!important}
  .facility-info-grid-v1688 .facility-info-website{grid-column:1/-1!important}
}


/* v1.6.90 - official website: icon-only final cell in facility info row */
@media (min-width:801px){
  .facility-info-grid-v1688.has-website{
    grid-template-columns:minmax(300px,1.65fr) minmax(165px,.92fr) minmax(95px,.52fr) minmax(95px,.52fr) minmax(110px,.62fr) minmax(95px,.52fr) 76px!important;
  }
  .facility-info-grid-v1688.has-website>div:nth-child(6){border-right:1px solid #ddd!important}
  .facility-info-grid-v1688 .facility-info-website{
    grid-column:auto!important;border-top:0!important;border-right:0!important;min-height:118px!important;padding:0!important;
    display:flex!important;align-items:center;justify-content:center;
  }
}
.facility-info-homepage-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;color:#ef3f72;text-decoration:none;border-radius:50%;transition:background .18s ease,transform .18s ease}
.facility-info-homepage-icon svg{width:30px;height:30px;display:block}
.facility-info-homepage-icon:hover{background:#fff0f5;transform:translateY(-1px)}
@media (max-width:800px){
  .facility-info-grid-v1688 .facility-info-website{grid-column:auto!important;min-height:88px!important;padding:0!important;display:flex!important;align-items:center;justify-content:center}
  .facility-info-homepage-icon{width:44px;height:44px}
  .facility-info-homepage-icon svg{width:27px;height:27px}
}

/* v1.6.91 - facility info: dynamic desktop columns, no empty trailing cells when optional data is missing */
@media (min-width:801px){
  /* 7 visible cells (all standard fields + homepage) */
  .facility-info-grid-v1688.has-website:has(>div:nth-child(7)){
    grid-template-columns:minmax(300px,1.65fr) repeat(5,minmax(95px,.62fr)) 76px!important;
  }
  /* 6 visible cells (one optional field missing + homepage) */
  .facility-info-grid-v1688.has-website:not(:has(>div:nth-child(7))){
    grid-template-columns:minmax(300px,1.65fr) repeat(4,minmax(105px,.68fr)) 76px!important;
  }
  /* 6 visible cells without homepage */
  .facility-info-grid-v1688:not(.has-website):has(>div:nth-child(6)){
    grid-template-columns:minmax(300px,1.65fr) repeat(5,minmax(105px,.68fr))!important;
  }
  /* 5 visible cells without homepage */
  .facility-info-grid-v1688:not(.has-website):not(:has(>div:nth-child(6))){
    grid-template-columns:minmax(300px,1.65fr) repeat(4,minmax(115px,.72fr))!important;
  }
  .facility-info-grid-v1688>div{border-right:1px solid #ddd!important}
  .facility-info-grid-v1688>div:last-child{border-right:0!important}
}


/* v1.6.92 - homepage cell: user-approved icon above, crisp label below */
.facility-info-homepage-icon{flex-direction:column!important;gap:5px!important;width:100%!important;height:100%!important;border-radius:0!important;font-size:14px!important;font-weight:600!important;line-height:1.2!important;color:#111!important;}
.facility-info-homepage-icon svg{width:30px!important;height:30px!important;color:#ef3f72!important;flex:0 0 auto!important;}
.facility-info-homepage-icon span{display:block!important;color:#111!important;white-space:nowrap!important;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;}
@media(max-width:800px){.facility-info-homepage-icon{gap:4px!important;font-size:13px!important}.facility-info-homepage-icon svg{width:27px!important;height:27px!important}}


/* v1.6.93 - customer-facing facility info: remove operation/ownership; balanced funeral/wedding columns */
@media (min-width:801px){
  .facility-info-grid-v1688{
    grid-template-columns:minmax(340px,2.15fr) repeat(3,minmax(120px,.78fr))!important;
  }
  .facility-info-grid-v1688.has-website{
    grid-template-columns:minmax(340px,2.15fr) repeat(3,minmax(120px,.78fr)) 92px!important;
  }
  /* when parking or another optional customer field is absent, visible cells expand naturally */
  .facility-info-grid-v1688:not(.has-website):not(:has(>div:nth-child(4))){
    grid-template-columns:minmax(340px,2.15fr) repeat(2,minmax(145px,.9fr))!important;
  }
  .facility-info-grid-v1688.has-website:not(:has(>div:nth-child(5))){
    grid-template-columns:minmax(340px,2.15fr) repeat(2,minmax(145px,.9fr)) 92px!important;
  }
  .facility-info-grid-v1688>div{border-right:1px solid #ddd!important}
  .facility-info-grid-v1688>div:last-child{border-right:0!important}
  .facility-info-grid-v1688 .facility-info-website{grid-column:auto!important;border-top:0!important}
}

/* v1.6.94 - desktop facility info: one horizontal line per item + uniform icons */
.facility-info-grid-v1688 .facility-info-icon svg{
  width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
}
@media (min-width:801px){
  .facility-info-grid-v1688>div{
    min-height:72px!important;padding:0 16px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;white-space:nowrap;
  }
  .facility-info-grid-v1688 .facility-info-address{justify-content:flex-start!important;white-space:normal;}
  .facility-info-grid-v1688 dt{margin:0!important;display:inline-flex!important;align-items:center!important;gap:7px!important;flex:0 0 auto;line-height:1.25!important;}
  .facility-info-grid-v1688 dd{margin:0!important;display:inline-flex!important;align-items:center!important;line-height:1.25!important;}
  .facility-info-grid-v1688 .facility-info-icon{width:18px!important;height:18px!important;flex:0 0 18px!important;font-size:0!important;}
  .facility-info-grid-v1688 .facility-info-phone-link{display:inline-flex!important;align-items:center!important;}
  .facility-info-grid-v1688 .facility-info-website{padding:0!important;}
  .facility-info-grid-v1688 .facility-info-homepage-icon{flex-direction:row!important;gap:7px!important;width:100%!important;height:72px!important;justify-content:center!important;align-items:center!important;font-size:11px!important;font-weight:800!important;color:#85837c!important;text-decoration:none!important;}
  .facility-info-grid-v1688 .facility-info-homepage-icon svg{width:18px!important;height:18px!important;flex:0 0 18px!important;color:#ef3f72!important;}
  .facility-info-grid-v1688 .facility-info-homepage-icon span{color:#85837c!important;}
}


/* v1.6.95 - compact desktop facility row: value-first address/phone + adaptive address width */
@media (min-width:801px){
  .facility-info-grid-v1688,
  .facility-info-grid-v1688.has-website{
    display:flex!important;
    grid-template-columns:none!important;
    width:100%;
  }
  .facility-info-grid-v1688>div{
    flex:0 1 auto;
    min-width:0;
    min-height:64px!important;
    padding:0 14px!important;
  }
  .facility-info-grid-v1688 .facility-info-address{
    flex:1 1 46%;
    min-width:280px;
    justify-content:flex-start!important;
  }
  .facility-info-grid-v1688 .facility-info-phone{
    flex:0 1 205px;
    min-width:160px;
  }
  .facility-info-grid-v1688>div:not(.facility-info-address):not(.facility-info-phone):not(.facility-info-website){
    flex:0 1 155px;
    min-width:105px;
  }
  .facility-info-grid-v1688 .facility-info-website{
    flex:0 1 145px;
    min-width:105px;
    height:64px!important;
  }
  .facility-info-grid-v1688 .facility-info-homepage-icon{height:64px!important;}
  .facility-info-grid-v1688 .facility-info-address dt,
  .facility-info-grid-v1688 .facility-info-phone dt{gap:0!important;}
  .facility-info-grid-v1688 .facility-info-address dd,
  .facility-info-grid-v1688 .facility-info-phone dd,
  .facility-info-grid-v1688 .facility-info-phone-link{
    font-size:14px!important;
    font-weight:700!important;
    line-height:1.35!important;
  }
  .facility-info-grid-v1688 .facility-info-address dd{white-space:normal;word-break:keep-all;}
}


/* v1.6.96 - facility row order: address > phone > homepage > rooms/halls > parking */
@media (min-width:801px){
  .facility-info-grid-v1688 .facility-info-website{
    flex:0 1 150px!important;
    min-width:118px!important;
  }
  /* PC: keep homepage prominent as in the approved mockup */
  .facility-info-grid-v1688 .facility-info-homepage-icon{
    font-size:14px!important;
    font-weight:800!important;
  }
  .facility-info-grid-v1688 .facility-info-homepage-icon span{
    color:#ef3f72!important;
  }
}
@media (max-width:800px){
  .facility-info-grid-v1688{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .facility-info-grid-v1688 .facility-info-address{
    grid-column:1/-1!important;
  }
  .facility-info-grid-v1688 .facility-info-phone,
  .facility-info-grid-v1688 .facility-info-website{
    grid-column:auto!important;
    min-height:94px!important;
  }
  .facility-info-grid-v1688 .facility-info-phone{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .facility-info-grid-v1688 .facility-info-website{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:14px 13px!important;
  }
  /* Mobile: retain the original homepage text sizing, only move it beside phone */
  .facility-info-grid-v1688 .facility-info-homepage-icon{
    flex-direction:row!important;
    gap:7px!important;
    width:100%!important;
    height:auto!important;
    font-size:13px!important;
    font-weight:600!important;
    color:#111!important;
  }
  .facility-info-grid-v1688 .facility-info-homepage-icon svg{
    width:27px!important;height:27px!important;flex:0 0 27px!important;
  }
  .facility-info-grid-v1688 .facility-info-homepage-icon span{color:#111!important;}
}


/* v1.6.97 - PC homepage typography matches phone; mobile rooms/parking inline */
@media (min-width:801px){
  .facility-info-grid-v1688 .facility-info-homepage-icon,
  .facility-info-grid-v1688 .facility-info-homepage-icon span{
    font-size:14px!important;
    font-weight:700!important;
    line-height:1.35!important;
  }
}
@media (max-width:800px){
  .facility-info-grid-v1688>div:not(.facility-info-address):not(.facility-info-phone):not(.facility-info-website){
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
  }
  .facility-info-grid-v1688>div:not(.facility-info-address):not(.facility-info-phone):not(.facility-info-website) dt,
  .facility-info-grid-v1688>div:not(.facility-info-address):not(.facility-info-phone):not(.facility-info-website) dd{
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    line-height:1.3!important;
  }
  .facility-info-grid-v1688>div:not(.facility-info-address):not(.facility-info-phone):not(.facility-info-website) dt{
    gap:7px!important;
  }
}

/* v1.6.98 - PC only: restore separator between homepage and rooms/halls */
@media (min-width:801px){
  .facility-info-grid-v1688 .facility-info-website{
    border-right:1px solid #ddd!important;
  }
  .facility-info-grid-v1688 .facility-info-website:last-child{
    border-right:0!important;
  }
}

/* v1.6.99 - mobile phone/homepage visual alignment: unified icon boxes and baseline */
@media (max-width:800px){
  .facility-info-grid-v1688 .facility-info-phone,
  .facility-info-grid-v1688 .facility-info-website{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:14px 16px!important;
  }
  .facility-info-grid-v1688 .facility-info-phone dt,
  .facility-info-grid-v1688 .facility-info-phone dd{
    margin:0!important;
    display:inline-flex!important;
    align-items:center!important;
    line-height:1.35!important;
  }
  .facility-info-grid-v1688 .facility-info-phone{gap:10px!important;}
  .facility-info-grid-v1688 .facility-info-phone .facility-info-icon,
  .facility-info-grid-v1688 .facility-info-homepage-icon svg{
    width:20px!important;
    height:20px!important;
    flex:0 0 20px!important;
    display:block!important;
  }
  .facility-info-grid-v1688 .facility-info-phone .facility-info-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .facility-info-grid-v1688 .facility-info-phone .facility-info-icon svg{
    width:20px!important;
    height:20px!important;
  }
  .facility-info-grid-v1688 .facility-info-phone-link,
  .facility-info-grid-v1688 .facility-info-homepage-icon,
  .facility-info-grid-v1688 .facility-info-homepage-icon span{
    line-height:1.35!important;
  }
  .facility-info-grid-v1688 .facility-info-homepage-icon{
    justify-content:flex-start!important;
    align-items:center!important;
    gap:10px!important;
  }
}


/* v1.7.02 - mobile ASAP option: keep short estimate inline without wrapping */
@media (max-width:800px){
  .asap-choice > span{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    white-space:nowrap!important;
  }
  .asap-choice .asap-short-note{
    display:inline!important;
    margin:0!important;
    font-size:11px!important;
    font-weight:400!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
}
@media (min-width:801px){
  .asap-choice .asap-short-note{display:none!important;}
}

/* v1.7.03 - mobile ASAP option: keep original two-line layout, shorten helper text */
@media (max-width:800px){
  .asap-choice > span{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:2px!important;
    white-space:normal!important;
  }
  .asap-choice .asap-short-note{
    display:block!important;
    margin:0!important;
    font-size:11px!important;
    font-weight:400!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
}

/* v1.7.04 - ASAP helper text visible in the same two-line layout on desktop and mobile */
.asap-choice > span{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:2px!important;
  white-space:normal!important;
}
.asap-choice .asap-short-note{
  display:block!important;
  margin:0!important;
  font-size:11px!important;
  font-weight:400!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
@media (max-width:430px){
  .asap-choice .asap-short-note{font-size:9px!important;}
}

/* 1.7.13: mobile-only fixed size for the long customer-name bank-transfer example */
@media (max-width: 767px){
}

/* 1.7.30: emphasize bank-transfer depositor instruction */
.payment-choice .payment-depositor-warning{font-weight:700!important;color:#4f514d!important;}

/* v1.7.34 — 리본 경조사어/보내시는 분 입력박스 테두리·높이 완전 통일 */
.order-form .ribbon-info-row .ribbon-select-wrap .ribbon-phrase-select,
.order-form .ribbon-info-row input[name^="sender_text["]{
  height:46px!important;
  min-height:46px!important;
  margin-top:6px!important;
  border:1px solid #263238!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  background-color:#fff!important;
  box-shadow:none!important;
  outline-offset:0!important;
}


/* v1.7.36 — 초간편 주문폼: 3단계, 여백 축소, 선택형 안내 */
.order-page{max-width:1100px!important}
.order-page .page-title{margin-bottom:22px!important}
.order-page .page-title h1{font-family:var(--sans)!important;font-weight:800!important;font-size:clamp(30px,3.6vw,42px)!important;letter-spacing:-.05em!important}
.order-form{border-top:0!important}
.order-form .order-section{border:1px solid #e7e7e4!important;border-radius:18px!important;padding:26px!important;margin:0 0 16px!important;display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;gap:14px!important;background:#fff!important;box-shadow:0 5px 20px rgba(20,24,22,.035)!important}
.order-form .quick-product-summary{display:block!important;padding:18px 20px!important;background:#fafaf8!important}
.quick-product-summary .order-content>h2{font-family:var(--sans)!important;font-size:15px!important;font-weight:800!important;margin-bottom:10px!important}
.quick-product-summary .selected-products-summary{margin-top:0!important}
.quick-product-summary .selected-products-summary-head{display:none!important}
.quick-product-summary .selected-products-total{border-top:0!important;padding-top:8px!important}
.quick-product-summary .form-note{margin:10px 0 0!important;color:#8a8a84!important}
.order-form .order-num{width:40px!important;height:40px!important;border-radius:12px!important;background:#202a2e!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-family:var(--sans)!important;font-style:normal!important;font-size:13px!important;font-weight:800!important}
.order-form .order-content>h2{font-family:var(--sans)!important;font-size:22px!important;font-weight:800!important;letter-spacing:-.04em!important;margin:5px 0 18px!important}
.order-form .field-grid{margin-top:0!important;gap:12px!important}
.order-form .field-grid+ .field-grid,.order-form .field-grid+ .full-label,.order-form .full-label+ .field-grid{margin-top:14px!important}
.order-form .field-grid label,.order-form .full-label{font-size:12px!important;color:#2a302f!important}
.order-form input,.order-form select,.order-form textarea,.order-form .delivery-date-trigger{border:1px solid #d9ddda!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
.order-form input:focus,.order-form select:focus,.order-form textarea:focus{border-color:#202a2e!important;outline:2px solid rgba(32,42,46,.08)!important}
.delivery-place-grid{grid-template-columns:minmax(180px,.38fr) minmax(220px,.62fr)!important}
.quick-place-label{display:block;margin-top:14px!important}
.quick-date-time{margin-top:14px!important}
#selected-product-options{margin-top:22px!important;padding-top:20px!important;border-top:1px solid #eceeeb!important}
#selected-product-options>h3{font-family:var(--sans)!important;font-size:15px!important;font-weight:800!important;margin:0 0 12px!important}
.selected-options-empty{display:none!important}
.sender-help{display:none!important}
.payment-choice{margin-top:0!important;gap:12px!important}
.payment-choice label{border:1px solid #dfe2df!important;border-radius:12px!important;padding:16px!important;cursor:pointer!important}
.payment-choice label:has(input:checked){border-color:#202a2e!important;background:#fafbf9!important;box-shadow:inset 0 0 0 1px #202a2e!important}
.payment-choice .payment-depositor-warning{font-weight:600!important;font-size:10px!important;margin-top:5px!important}
.payment-warning{border-radius:9px!important;margin:10px 0 0!important;background:#f7f6f2!important}
.optional-note-wrap{margin-top:14px!important}
.optional-note-toggle{width:100%!important;min-height:46px!important;border:1px dashed #d4d8d4!important;border-radius:10px!important;background:#fff!important;text-align:left!important;padding:0 14px!important;font-weight:700!important;color:#555!important;cursor:pointer!important}
.optional-note-field{margin-top:10px!important}
.optional-note-field textarea{min-height:90px!important}
.order-submit{position:sticky!important;bottom:12px!important;border:1px solid #202a2e!important;border-radius:14px!important;padding:10px 12px!important;box-shadow:0 10px 30px rgba(20,24,22,.12)!important;margin-top:18px!important}
.order-submit .order-live-total{font-size:12px!important;color:#6c716e!important}
.order-submit .order-live-total b{font-size:20px!important;color:#111!important;margin-left:8px!important}
.order-submit button{border-radius:10px!important;min-width:320px!important;font-size:17px!important}
@media(max-width:800px){
 .order-page{padding-left:12px!important;padding-right:12px!important}
 .order-form .order-section{grid-template-columns:1fr!important;padding:20px 16px!important;border-radius:14px!important;margin-bottom:12px!important}
 .order-form .order-num{width:34px!important;height:34px!important;border-radius:10px!important}
 .order-form .order-content>h2{margin:-32px 0 20px 48px!important;font-size:20px!important;min-height:32px!important;display:flex!important;align-items:center!important}
 .order-form .quick-product-summary .order-content>h2{margin:0 0 10px!important;min-height:0!important;font-size:14px!important}
 .delivery-place-grid{grid-template-columns:1fr!important}
 .order-submit{bottom:8px!important;display:block!important}
 .order-submit>div{display:none!important}
 .order-submit button{width:100%!important;min-width:0!important;min-height:54px!important;height:54px!important}
}

/* v1.7.37 — 필수항목 표시는 간결한 * 방식으로 통일 */
.order-form label .required-mark{
  display:inline!important;
  margin:0 0 0 3px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  color:#e53935!important;
  font-size:14px!important;
  font-style:normal!important;
  font-weight:700!important;
  line-height:1!important;
  vertical-align:baseline!important;
}


/* v1.7.38 — 필수 * 단일화 + 축하/근조 배송장소 예시 + 모바일 폭 정렬 */
.order-form label .required-mark::before{content:none!important;display:none!important;}
.order-form label .required-mark{margin-left:3px!important;}
@media(max-width:800px){
  .order-page,.order-form,.order-form .order-section,.order-form .order-content,
  .order-form .field-grid,.order-form .full-label,#selected-product-options,
  .selected-option-panel,.ribbon-info-row,.delivery-time-inline,.payment-choice{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
  .order-form .field-grid,.recipient-grid,.customer-grid,.delivery-place-grid,
  .quick-date-time,.ribbon-info-row,.payment-choice{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .order-form input,.order-form select,.order-form textarea,.order-form .delivery-date-trigger,
  .ribbon-select-wrap,.add-sender-btn,.optional-note-toggle{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
  .quick-place-label{width:100%!important;}
  #selected-product-options{margin-top:18px!important;padding-top:18px!important;}
  .delivery-time-inline{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;}
  .asap-choice{width:100%!important;min-width:0!important;box-sizing:border-box!important;}
}

/* v1.7.39 — 모바일 주문폼 100% 폭 + 필수 기호 제거 */
.order-form .required-mark{display:none!important;}
@media(max-width:800px){
  .order-page{width:100%!important;max-width:100%!important;padding-left:12px!important;padding-right:12px!important;box-sizing:border-box!important;}
  .order-form{width:100%!important;max-width:none!important;min-width:0!important;}
  .order-form .order-section{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;padding:18px 14px!important;box-sizing:border-box!important;}
  .order-form .order-section>.order-num{display:inline-flex!important;vertical-align:middle!important;margin:0 10px 16px 0!important;}
  .order-form .order-section>.order-content{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;}
  .order-form .order-section>.order-content>h2{display:inline-flex!important;vertical-align:middle!important;margin:0 0 16px!important;min-height:34px!important;}
  .order-form .order-section>.order-content>*:not(h2){width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;}
  .order-form .field-grid,.order-form .recipient-grid,.order-form .customer-grid,
  .order-form .delivery-place-grid,.order-form .quick-date-time,.order-form .ribbon-info-row,
  .order-form .payment-choice{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;max-width:none!important;min-width:0!important;}
  .order-form .field-grid>label,.order-form .full-label,.order-form .quick-place-label,
  .order-form #selected-product-options,.order-form .selected-option-panel,
  .order-form .ribbon-info-row>label{display:block!important;width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;}
  .order-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
  .order-form select,.order-form textarea,.order-form .delivery-date-trigger,
  .order-form .ribbon-select-wrap,.order-form .add-sender-btn,.order-form .optional-note-toggle{
    width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;
  }
  .order-form .delivery-time-inline{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;gap:8px!important;}
  .order-form .asap-choice{width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;}
}


/* v1.7.40 — 필수 * 1개 복원 + 선택 상품 리본문구만 표시 + 모바일 정렬 보정 */
.order-form .required-mark{
  display:inline!important;
  margin-left:3px!important;
  color:#e53935!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1!important;
}
.order-form .selected-option-panel{display:none!important;}
.order-form .selected-option-panel.show{display:block!important;}
@media(max-width:800px){
  .order-form .delivery-time-inline{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:8px!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .order-form #selected-product-options{
    clear:both!important;
    width:100%!important;
    margin-top:18px!important;
  }
}

/* v1.7.41 — 모바일 리본문구 겹침 해소 + 결제 선택 UI 컴팩트 복원 (PC 유지) */
@media(max-width:800px){
  /* 배송시간 영역은 내용 높이만큼 자연스럽게 확보하여 다음 리본문구와 겹치지 않게 */
  .order-section .delivery-time-inline,
  .order-form .delivery-time-inline{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    margin-bottom:18px!important;
  }
  .order-section .delivery-time-inline #delivery-time-clock,
  .order-section .delivery-time-inline .asap-choice{
    height:54px!important;
    min-height:54px!important;
    max-height:54px!important;
  }
  .order-form #selected-product-options{
    position:relative!important;
    clear:both!important;
    margin-top:20px!important;
    padding-top:18px!important;
  }
  .order-form #selected-product-options>h3{
    position:static!important;
    display:block!important;
    margin:0 0 14px!important;
    line-height:1.35!important;
  }

  /* 모바일 결제: 큰 원형 체크 제거, 어제의 간결한 카드형 선택으로 복원 */
  .order-form .payment-choice{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
  }
  .order-form .payment-choice label{
    width:100%!important;
    min-height:76px!important;
    padding:13px 14px!important;
    display:flex!important;
    align-items:flex-start!important;
    gap:11px!important;
    border:1px solid #dfe2df!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .order-form .payment-choice label:has(input:checked){
    border-color:#202a2e!important;
    background:#fafbf9!important;
    box-shadow:inset 0 0 0 1px #202a2e!important;
  }
  .order-form .payment-choice input[type="radio"]{
    -webkit-appearance:none!important;
    appearance:none!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    max-width:18px!important;
    min-height:18px!important;
    max-height:18px!important;
    margin:2px 0 0!important;
    padding:0!important;
    border:1.5px solid #9ba19d!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:none!important;
    flex:0 0 18px!important;
  }
  .order-form .payment-choice input[type="radio"]:checked{
    border:5px solid #202a2e!important;
    background:#fff!important;
  }
  .order-form .payment-choice label>span{
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .order-form .payment-choice strong{
    font-size:14px!important;
    line-height:1.35!important;
  }
  .order-form .payment-choice small{
    font-size:11px!important;
    line-height:1.45!important;
  }
}


/* v1.7.42 — mobile simple blue radios + strict region child hiding */
#delivery-city-wrap[hidden]{display:none!important;}
@media(max-width:760px){
  .order-form .payment-choice input[type="radio"]{
    -webkit-appearance:auto!important;appearance:auto!important;
    accent-color:#1677ff!important;
    width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;
    min-height:16px!important;max-height:16px!important;margin:3px 0 0!important;
    padding:0!important;border:0!important;box-shadow:none!important;flex:0 0 16px!important;
  }
  .order-form .payment-choice input[type="radio"]:checked{border:0!important;background:initial!important;}
}

/* v1.7.43 — payment selection: clean white card + blue outline only */
.order-form .payment-choice label,
.order-form .payment-choice label:focus-within{
  background:#fff!important;
  box-shadow:none!important;
  outline:none!important;
}
.order-form .payment-choice label:has(input:checked),
.order-form .payment-choice label:has(input:checked):focus-within{
  border-color:#1677ff!important;
  background:#fff!important;
  box-shadow:none!important;
  outline:none!important;
}
.order-form .payment-choice input[type="radio"]{
  accent-color:#1677ff!important;
  outline:none!important;
  box-shadow:none!important;
}
@media (hover:hover) and (pointer:fine){
  .order-form .payment-choice label:hover,
  .order-form .payment-choice label:has(input:checked):hover,
  .order-form .payment-choice label:focus-within:hover{
    border-color:#1677ff!important;
    background:#fff!important;
    box-shadow:none!important;
    transform:none!important;
  }
}


/* v1.7.44 — 예식·행사시간 안내 + ASAP 심플 한줄 체크 */
.order-form .delivery-time-help{
  display:block;margin-top:6px;color:#7b817d;font-size:11px;font-weight:500;line-height:1.4;
}
.order-form .delivery-time-help[hidden]{display:none!important;}
.order-form .delivery-time-inline{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;
}
.order-form .delivery-time-inline .asap-choice{
  width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;outline:0!important;display:inline-flex!important;align-items:center!important;gap:7px!important;
  white-space:nowrap!important;cursor:pointer!important;
}
.order-form .delivery-time-inline .asap-choice:hover,
.order-form .delivery-time-inline .asap-choice:focus-within{
  border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;
}
.order-form .delivery-time-inline .asap-choice input[type="checkbox"]{
  -webkit-appearance:auto!important;appearance:auto!important;accent-color:#1677ff!important;
  width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;
  min-height:16px!important;max-height:16px!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;
  flex:0 0 16px!important;
}
.order-form .delivery-time-inline .asap-choice span{
  display:inline-flex!important;align-items:baseline!important;gap:4px!important;white-space:nowrap!important;
}
.order-form .delivery-time-inline .asap-choice strong{
  font-size:13px!important;font-weight:700!important;line-height:1.3!important;white-space:nowrap!important;
}
.order-form .delivery-time-inline .asap-choice .asap-short-note{
  display:inline!important;margin:0!important;color:#7b817d!important;font-size:11px!important;font-weight:500!important;line-height:1.3!important;white-space:nowrap!important;
}
.order-form .delivery-time-inline .asap-choice.is-disabled{opacity:.48!important;background:transparent!important;}
@media(max-width:800px){
  .order-form .delivery-time-inline{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;
    margin-bottom:8px!important;
  }
  .order-form .delivery-time-inline #delivery-time-clock{width:100%!important;min-width:0!important;}
  .order-form .delivery-time-inline .asap-choice{width:auto!important;padding:0!important;}
  .order-form .delivery-time-inline .asap-choice strong{font-size:12px!important;}
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:10px!important;}
}
@media(max-width:390px){
  .order-form .delivery-time-inline{grid-template-columns:minmax(0,1fr)!important;gap:9px!important;}
  .order-form .delivery-time-inline .asap-choice{justify-self:start!important;}
}

/* v1.7.46 — wedding/event mode: hidden ASAP control must stay fully hidden */
.order-form .delivery-time-inline .asap-choice[hidden]{display:none!important;}

/* Premium 1766 — 주문조회 보내는 분/받는 분 전화번호 가독성 */
.lookup-inline-phone{display:inline-block;margin-left:8px;font-size:14px;line-height:1.45;font-weight:600;color:#4f5358;vertical-align:baseline;white-space:nowrap}
@media(max-width:520px){.lookup-inline-phone{font-size:13px;margin-left:6px}}

/* 1767: lookup phone same-line readable */
.lookup-detail-row>b .lookup-inline-phone{display:inline!important;margin:0 0 0 10px!important;color:inherit!important;font-size:1em!important;line-height:inherit!important;font-weight:700!important;white-space:nowrap!important;vertical-align:baseline!important}
@media(max-width:520px){.lookup-detail-row>b .lookup-inline-phone{margin-left:7px!important;font-size:1em!important}}


/* 1768: header brand click/focus — no blue focus border or link color shift */
.site-header .brand:focus,.site-header .brand:focus-visible,.site-header .brand:active{outline:none!important;box-shadow:none!important;color:inherit!important;-webkit-tap-highlight-color:transparent!important}
.site-header .brand:focus b,.site-header .brand:focus-visible b,.site-header .brand:active b{color:inherit!important}

/* v1.7.75 — public mobile header final flex fit
   Keep phone + hamburger reserved; brand uses only the remaining width. */
@media (max-width:720px){
  .site-header .header-inner{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .site-header .brand-cluster{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 28px)!important;
    overflow:hidden!important;
  }
  .site-header .brand{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .site-header .brand-logo{
    flex:0 1 34px!important;
    min-width:24px!important;
    width:34px!important;
    height:auto!important;
    aspect-ratio:1/1!important;
  }
  .site-header .brand>span{
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  .site-header .brand b{
    /* 1769 size is the ceiling; only narrow widths reduce it. */
    font-size:clamp(13px,calc((100vw - 234px)/8),22px)!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
  .site-header .brand-phone{
    flex:0 0 auto!important;
    min-width:max-content!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-menu-btn{
    flex:0 0 28px!important;
    width:28px!important;
    min-width:28px!important;
    margin-left:2px!important;
    margin-right:0!important;
    transform:none!important;
  }
}

/* v1.7.76 — balanced public mobile brand + phone scaling
   Keep the 1775 flex layout, but scale brand and phone together so neither dominates. */
@media (max-width:720px){
  .site-header .brand-logo{
    width:clamp(30px,8vw,34px)!important;
    min-width:30px!important;
    flex:0 0 clamp(30px,8vw,34px)!important;
  }
  .site-header .brand b{
    font-size:clamp(16px,4.7vw,22px)!important;
    letter-spacing:-.085em!important;
    line-height:1!important;
  }
  .site-header .brand-phone strong{
    font-size:clamp(15px,4.3vw,19px)!important;
    letter-spacing:-.07em!important;
    line-height:1!important;
  }
  .site-header .brand-phone:before{
    width:clamp(14px,4vw,16px)!important;
    height:clamp(14px,4vw,16px)!important;
    flex-basis:clamp(14px,4vw,16px)!important;
  }
}
@media (max-width:360px){
  .site-header .brand b{font-size:clamp(15px,4.55vw,16.5px)!important;}
  .site-header .brand-phone strong{font-size:clamp(14px,4.15vw,15px)!important;}
  .site-header .brand-cluster{gap:4px!important;}
}

/* v1.7.78 — phone/menu breathing room only.
   Reserve real space inside the phone item so the hamburger never touches the number. */
@media (max-width:720px){
  .site-header .brand-phone{
    padding-right:12px!important;
    box-sizing:border-box!important;
  }
}

/* v1.7.79 — normal mobile keeps the proven 1769 header sizing.
   Naver in-app keeps the 1778 compact/flex fit that already tested correctly there. */
@media (max-width:720px){
  body:not(.snf-naver-inapp) .site-header .header-inner{
    height:60px!important;
    padding-left:clamp(5px,1.5vw,8px)!important;
    padding-right:clamp(2px,.7vw,4px)!important;
    gap:0!important;
    overflow:visible!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand-cluster{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    gap:clamp(11px,3vw,14px)!important;
    overflow:visible!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand{
    display:flex!important;
    align-items:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    overflow:visible!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand-logo{
    width:clamp(30px,8vw,34px)!important;
    height:clamp(30px,8vw,34px)!important;
    min-width:0!important;
    flex:0 0 clamp(30px,8vw,34px)!important;
    aspect-ratio:auto!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand>span{min-width:0!important;overflow:visible!important;}
  body:not(.snf-naver-inapp) .site-header .brand b{
    font-size:clamp(18.5px,5.35vw,22px)!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.085em!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand-phone{
    display:inline-flex!important;
    align-items:center!important;
    gap:clamp(2px,.6vw,3px)!important;
    flex:0 0 auto!important;
    min-width:0!important;
    padding-left:0!important;
    padding-right:0!important;
    margin-left:0!important;
    border-left:0!important;
    white-space:nowrap!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand-phone:before{
    width:clamp(16px,4.2vw,19px)!important;
    height:clamp(16px,4.2vw,19px)!important;
    flex:0 0 clamp(16px,4.2vw,19px)!important;
  }
  body:not(.snf-naver-inapp) .site-header .brand-phone strong{
    font-size:clamp(16px,4.6vw,19px)!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:-.07em!important;
    white-space:nowrap!important;
  }
  body:not(.snf-naver-inapp) .site-header .mobile-menu-btn{
    width:clamp(24px,6.6vw,28px)!important;
    min-width:clamp(24px,6.6vw,28px)!important;
    flex:0 0 clamp(24px,6.6vw,28px)!important;
    height:42px!important;
    margin-left:auto!important;
    margin-right:0!important;
    padding:0!important;
    font-size:22px!important;
    transform:translateX(-10px)!important;
  }
}
@media (max-width:370px){
  body:not(.snf-naver-inapp) .site-header .brand-cluster{gap:9px!important;}
  body:not(.snf-naver-inapp) .site-header .mobile-menu-btn{transform:translateX(-8px)!important;}
}
@media (max-width:340px){
  body:not(.snf-naver-inapp) .site-header .brand-cluster{gap:7px!important;}
  body:not(.snf-naver-inapp) .site-header .mobile-menu-btn{transform:translateX(-7px)!important;}
}

/* v1.7.82 — mobile menu shows exactly one icon; JS swaps ☰/× */
@media(max-width:900px){.site-header .mobile-menu-btn[aria-expanded="true"]{font-size:21px!important}.site-header .mobile-menu-btn[aria-expanded="true"]:after{content:none!important;display:none!important}}

/* v1.7.83 — move only the mobile menu toggle slightly left; keep 1782 sizing/layout intact */
@media (max-width:720px){
  .site-header .mobile-menu-btn{transform:translateX(-16px)!important;}
}

/* 1787: lightweight 4-digit order CAPTCHA */
.snf-order-captcha{margin:18px 0 8px;padding:14px 16px;border:1px solid var(--line);background:#fff;display:flex;align-items:center;gap:16px;justify-content:flex-end}
.snf-captcha-copy{display:flex;align-items:center;gap:10px;white-space:nowrap}.snf-captcha-copy strong{font-size:13px}.snf-captcha-code{display:inline-flex;align-items:center;justify-content:center;min-width:76px;height:42px;padding:0 12px;background:var(--paper);border:1px solid var(--line);font-size:22px;font-weight:800;letter-spacing:.16em}
.snf-order-captcha label{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.snf-order-captcha input[name="snf_captcha_answer"]{width:110px;height:42px;border:1px solid var(--line);padding:0 12px;text-align:center;font-size:18px;font-weight:700;letter-spacing:.12em}
@media(max-width:520px){.snf-order-captcha{display:grid;grid-template-columns:1fr auto;gap:10px 12px;padding:12px;margin:16px 0 8px}.snf-captcha-copy{justify-content:space-between}.snf-order-captcha label{grid-column:1/-1;display:grid;grid-template-columns:1fr 104px;align-items:center}.snf-order-captcha input[name="snf_captcha_answer"]{width:104px}}

/* v1.7.93 — order form: customer-typed values 16px on PC/mobile; keep guidance text smaller */
.order-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
.order-form textarea{
  font-size:16px!important;
}
.order-form input::placeholder,
.order-form textarea::placeholder{
  font-size:13px!important;
}


/* v1.7.97 — Samsung Internet narrow viewport only.
   Preserve normal mobile + Naver in-app layouts; compact only Samsung when real width is tight. */
@media (max-width:390px){
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .header-inner{
    padding-left:4px!important;
    padding-right:2px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-cluster{
    flex:1 1 auto!important;
    min-width:0!important;
    gap:4px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand{
    flex:1 1 auto!important;
    min-width:0!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-logo{
    width:30px!important;
    height:30px!important;
    flex:0 0 30px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand b{
    font-size:16.5px!important;
    letter-spacing:-.095em!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone{
    flex:0 0 auto!important;
    gap:1px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone:before{
    width:14px!important;
    height:14px!important;
    flex:0 0 14px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone strong{
    font-size:14.5px!important;
    letter-spacing:-.08em!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .mobile-menu-btn{
    width:24px!important;
    min-width:24px!important;
    flex:0 0 24px!important;
    transform:translateX(-7px)!important;
  }
}

/* v1.7.98 — Samsung Internet extra-narrow header fit on every public page.
   Only Samsung Internet (non-Naver) is affected; normal mobile/Naver remain unchanged. */
@media (max-width:390px){
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .header-inner{
    padding-left:2px!important;
    padding-right:1px!important;
    gap:2px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-cluster{
    gap:2px!important;
    min-width:0!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand{
    gap:3px!important;
    min-width:0!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-logo{
    width:26px!important;
    height:26px!important;
    flex:0 0 26px!important;
    border-radius:7px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand>span{
    min-width:0!important;
    flex:0 1 auto!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand b{
    font-size:14px!important;
    letter-spacing:-.105em!important;
    white-space:nowrap!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone{
    padding-left:2px!important;
    gap:0!important;
    flex:0 0 auto!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone:before{
    width:11px!important;
    height:11px!important;
    flex:0 0 11px!important;
    margin-right:1px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone strong{
    font-size:13px!important;
    letter-spacing:-.09em!important;
    white-space:nowrap!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .mobile-menu-btn{
    width:22px!important;
    min-width:22px!important;
    flex:0 0 22px!important;
    margin-left:1px!important;
    transform:translateX(-3px)!important;
    font-size:20px!important;
  }
}
@media (max-width:340px){
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand b{font-size:13px!important;}
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone strong{font-size:12px!important;}
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-logo{width:24px!important;height:24px!important;flex-basis:24px!important;}
}

/* v1.7.99 — Samsung Internet narrow header: neutralize browser text scaling only in the header.
   Normal mobile and Naver in-app remain untouched. Keep body/user text scaling preferences intact. */
@media (max-width:390px){
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header,
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header *{
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .header-inner{
    padding-left:3px!important;
    padding-right:3px!important;
    gap:3px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-cluster{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:5px!important;
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:visible!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand{
    min-width:0!important;
    overflow:visible!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand>span{
    min-width:0!important;
    overflow:visible!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand b{
    font-size:14px!important;
    letter-spacing:-.09em!important;
    overflow:visible!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone{
    min-width:max-content!important;
    gap:2px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone strong{
    font-size:13px!important;
    letter-spacing:-.075em!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .mobile-menu-btn{
    width:24px!important;
    min-width:24px!important;
    flex:0 0 24px!important;
    margin-left:5px!important;
    transform:none!important;
    font-size:20px!important;
  }
}


/* v1.8.00 — Samsung Internet responsive header fit.
   Begin larger at 100%; JS reduces --snf-samsung-fit only when the actual row would collide.
   Normal mobile, Naver in-app, PC and page content are untouched. */
@media (max-width:390px){
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .header-inner{
    --snf-samsung-fit:1;
    padding-left:4px!important;
    padding-right:4px!important;
    gap:3px!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-cluster{
    gap:calc(6px * var(--snf-samsung-fit))!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand{
    gap:calc(5px * var(--snf-samsung-fit))!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-logo{
    width:calc(32px * var(--snf-samsung-fit))!important;
    height:calc(32px * var(--snf-samsung-fit))!important;
    flex:0 0 calc(32px * var(--snf-samsung-fit))!important;
    border-radius:calc(8px * var(--snf-samsung-fit))!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand b{
    font-size:calc(16px * var(--snf-samsung-fit))!important;
    letter-spacing:-.075em!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone{
    padding-left:calc(3px * var(--snf-samsung-fit))!important;
    gap:calc(2px * var(--snf-samsung-fit))!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone:before{
    width:calc(14px * var(--snf-samsung-fit))!important;
    height:calc(14px * var(--snf-samsung-fit))!important;
    flex:0 0 calc(14px * var(--snf-samsung-fit))!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .brand-phone strong{
    font-size:calc(15px * var(--snf-samsung-fit))!important;
    letter-spacing:-.06em!important;
  }
  body.snf-samsung-internet:not(.snf-naver-inapp) .site-header .mobile-menu-btn{
    width:calc(28px * var(--snf-samsung-fit))!important;
    min-width:calc(28px * var(--snf-samsung-fit))!important;
    flex-basis:calc(28px * var(--snf-samsung-fit))!important;
    margin-left:6px!important;
    font-size:calc(22px * var(--snf-samsung-fit))!important;
  }
}

/* v1.8.01 — selected product: remove only the innermost card border */
.selected-products-summary .selected-summary-item{
  border:0!important;
}

/* v1.8.02 — desktop selected product: enlarge left product info only; keep right controls/total/layout fixed */
@media (min-width:641px){
  .selected-products-summary .selected-summary-item > img{
    transform:scale(1.12);
    transform-origin:center;
  }
  .selected-products-summary .selected-summary-copy > .selected-summary-titleline > strong{
    font-size:15px!important;
  }
  .selected-products-summary .selected-summary-copy > small{
    font-size:12.5px!important;
  }
}

/* v1.8.07 — CAPTCHA visible inline alert (main.css is the frontend stylesheet actually enqueued) */
.snf-order-captcha.snf-captcha-has-error{flex-wrap:wrap;border:2px solid #b91c1c!important;background:#fff!important;box-shadow:0 0 0 4px rgba(185,28,28,.10)!important;}
.snf-captcha-error:not([hidden]){display:flex!important;flex:0 0 100%;width:100%;box-sizing:border-box;margin:4px 0 0!important;padding:14px 16px!important;border:0!important;border-radius:8px!important;background:#b91c1c!important;color:#fff!important;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;text-align:center!important;line-height:1.35!important;}
.snf-captcha-error:not([hidden])::before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid #fff;border-radius:50%;font-size:17px;font-weight:900;line-height:1;color:#fff!important;}
.snf-captcha-error:not([hidden]) strong{font-size:17px!important;font-weight:900!important;color:#fff!important;}
.snf-captcha-error:not([hidden]) span{flex:0 0 100%;font-size:14px!important;font-weight:700!important;color:#fff!important;}
.snf-order-captcha input[aria-invalid="true"]{border:3px solid #b91c1c!important;background:#fff5f5!important;box-shadow:0 0 0 3px rgba(185,28,28,.18)!important;outline:none!important;}
@media(max-width:520px){
  .snf-order-captcha.snf-captcha-has-error{display:grid;grid-template-columns:1fr auto;}
  .snf-captcha-error:not([hidden]){grid-column:1/-1;width:100%;padding:14px 10px!important;}
  .snf-captcha-error:not([hidden]) strong{font-size:16px!important;}
}
/* 1808: softer CAPTCHA inline error */
.snf-order-captcha.snf-captcha-has-error{flex-wrap:wrap;border-color:#e5e5e5!important;background:#fff!important;box-shadow:none!important;}
.snf-captcha-error:not([hidden]){display:flex!important;flex:0 0 100%;width:100%;box-sizing:border-box;margin:5px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:#222!important;align-items:flex-start!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:wrap!important;text-align:left!important;line-height:1.45!important;}
.snf-captcha-error:not([hidden])::before{content:"!"!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 18px!important;width:18px!important;height:18px!important;margin-top:1px!important;border:0!important;border-radius:50%!important;background:#e53935!important;color:#fff!important;font-size:13px!important;font-weight:900!important;line-height:1!important;}
.snf-captcha-error:not([hidden]) strong{font-size:14px!important;font-weight:700!important;color:#222!important;}
.snf-captcha-error:not([hidden]) span{flex:0 0 100%!important;padding-left:24px!important;font-size:14px!important;font-weight:400!important;color:#222!important;}
.snf-order-captcha input[aria-invalid="true"]{border:1px solid #e53935!important;background:#fff!important;box-shadow:none!important;outline:none!important;}
@media(max-width:700px){.snf-order-captcha.snf-captcha-has-error{display:grid;grid-template-columns:1fr auto;}.snf-captcha-error:not([hidden]){grid-column:1/-1;width:100%;padding:0!important;}}


/* 1810: clear visual focus for the first missing order field (mobile + desktop) */
.order-form input.snf-field-needs-attention,
.order-form select.snf-field-needs-attention,
.order-form textarea.snf-field-needs-attention{
  border-color:#ef5a67!important;
  box-shadow:0 0 0 2px rgba(239,90,103,.10)!important;
  outline:none!important;
}
.order-form label.snf-field-label-needs-attention{color:inherit!important;}
@media(max-width:900px){
  .order-form input.snf-field-needs-attention,
  .order-form select.snf-field-needs-attention,
  .order-form textarea.snf-field-needs-attention{
    border-color:#ef5a67!important;
    box-shadow:0 0 0 2px rgba(239,90,103,.10)!important;
  }
}


/* v1.7.96 — visually pair each ribbon message with its selected product */
.ribbon-product-identity{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:8px 10px;border:1px solid #e5e2dc;background:#fff}
.ribbon-product-identity img{width:44px;height:44px;flex:0 0 44px;object-fit:cover;border-radius:5px;border:1px solid #ece8e1}
.ribbon-product-number{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;flex:0 0 25px;border-radius:50%;background:#111;color:#fff;font-size:12px;font-weight:800}
.ribbon-product-identity strong{min-width:0;font-size:13px;line-height:1.35;color:#222}
@media(max-width:640px){.ribbon-product-identity{gap:8px;padding:7px 8px}.ribbon-product-identity img{width:40px;height:40px;flex-basis:40px}.ribbon-product-number{width:23px;height:23px;flex-basis:23px;font-size:11px}.ribbon-product-identity strong{font-size:12px}}

/* 1797: ribbon product identity price */
.ribbon-product-price{margin-left:auto;white-space:nowrap;font-size:12px;line-height:1.35;font-weight:700;color:#555}
@media(max-width:640px){.ribbon-product-price{font-size:11px}}

/* v1800: when only one product is selected, truly hide the number badge. */
.ribbon-product-number[hidden]{display:none!important;}

/* v1801: product identity is only useful for multi-product ribbon matching. */
.ribbon-product-identity[hidden]{display:none!important;}

/* 1802: mobile order lookup — make each ordered product a clearly separate card. */
@media(max-width:520px){
  .lookup-detail-card .lookup-product-detail{margin:10px 0;padding:10px 11px;border:1px solid #ded9d0;border-radius:10px;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.02)}
  .lookup-detail-card .lookup-product-detail:first-of-type{margin-top:8px}
  .lookup-detail-card .lookup-product-detail:last-of-type{margin-bottom:12px}
  .lookup-product-detail .lookup-detail-row{padding:7px 0}
}

/* 1804: order lookup mobile detail uses nearly full viewport width; keep 1802 product separation */
@media(max-width:520px){
  .order-lookup-page{max-width:none;width:100%;padding-left:6px;padding-right:6px}
  .order-lookup-page .page-title,.order-lookup-page .lookup-form{margin-left:10px;margin-right:10px}
  .order-lookup-page .lookup-result{width:100%;padding-left:7px;padding-right:7px}
  .order-lookup-page .lookup-detail-card{width:100%;margin-left:0;margin-right:0;padding-left:7px;padding-right:7px}
  .order-lookup-page .lookup-detail-card .lookup-product-detail{margin-left:0;margin-right:0}
}

/* 1805: keep the lookup result wide, but restore comfortable gutters to the lookup-number form. */
@media(max-width:520px){
  .order-lookup-page .lookup-form{
    width:calc(100% - 28px);
    max-width:520px;
    margin:0 auto 28px;
  }
}

/* 1806: ordered-product separation on desktop too; mobile 1802 styling remains unchanged. */
@media(min-width:521px){
  .lookup-detail-card .lookup-product-detail{
    margin:12px 0;
    padding:12px 14px;
    border:1px solid #ded9d0;
    border-radius:10px;
    background:#fff;
    box-shadow:0 1px 0 rgba(0,0,0,.02);
  }
  .lookup-detail-card .lookup-product-detail:first-of-type{margin-top:8px}
  .lookup-detail-card .lookup-product-detail:last-of-type{margin-bottom:12px}
  .lookup-product-detail .lookup-detail-row{padding:8px 0}
}

/* 1812 — polished final order confirmation modal */
html.snf-confirm-open,body.snf-confirm-open{overflow:hidden!important}
.snf-order-confirm-modal[hidden]{display:none!important}.snf-order-confirm-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;opacity:0;transition:opacity .16s ease}.snf-order-confirm-modal.is-open{opacity:1}.snf-order-confirm-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.snf-order-confirm-card{position:relative;width:min(660px,100%);max-height:min(86vh,820px);display:flex;flex-direction:column;background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.28);overflow:hidden;transform:translateY(10px) scale(.985);transition:transform .16s ease}.is-open .snf-order-confirm-card{transform:none}.snf-order-confirm-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px 26px 18px;border-bottom:1px solid #edf0f3}.snf-order-confirm-card h2{margin:0 0 5px;font-size:22px;line-height:1.3;color:#111827}.snf-order-confirm-card header p{margin:0;color:#6b7280;font-size:14px}.snf-confirm-x{border:0;background:#f3f4f6;width:36px;height:36px;border-radius:50%;font-size:25px;line-height:1;color:#4b5563;cursor:pointer;flex:none}.snf-order-confirm-body{overflow:auto;padding:20px 26px 24px;overscroll-behavior:contain}.snf-confirm-section{margin:0 0 22px}.snf-confirm-section>h3{margin:0 0 10px;font-size:15px;color:#111827}.snf-confirm-info{margin:0;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden}.snf-confirm-info>div{display:grid;grid-template-columns:94px minmax(0,1fr);gap:12px;padding:10px 13px;border-top:1px solid #eef0f2}.snf-confirm-info>div:first-child{border-top:0}.snf-confirm-info dt{color:#6b7280;font-size:13px}.snf-confirm-info dd{margin:0;color:#111827;font-size:14px;font-weight:600;word-break:break-word}.snf-confirm-products{display:grid;gap:10px}.snf-confirm-product{border:1px solid #dfe3e8;border-radius:15px;padding:13px;background:#fff}.snf-confirm-product-main{display:flex;align-items:center;gap:11px}.snf-confirm-index{display:grid;place-items:center;flex:none;width:25px;height:25px;border-radius:50%;background:#111827;color:#fff;font-size:12px;font-weight:800}.snf-confirm-product-main img{width:58px;height:58px;border-radius:10px;object-fit:cover;background:#f3f4f6}.snf-confirm-product-main>div{min-width:0;display:flex;flex-direction:column;gap:4px}.snf-confirm-product-main strong{font-size:15px;color:#111827}.snf-confirm-product-main span{font-size:13px;color:#6b7280}.snf-confirm-product dl{margin:11px 0 0;padding-top:10px;border-top:1px dashed #e1e5e9}.snf-confirm-product dl>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:8px;margin-top:6px}.snf-confirm-product dl>div:first-child{margin-top:0}.snf-confirm-product dt{font-size:12px;color:#6b7280}.snf-confirm-product dd{margin:0;font-size:13px;color:#374151;word-break:break-word}.snf-confirm-total{display:flex;align-items:center;justify-content:space-between;padding:17px 18px;border-radius:15px;background:#f7f8fa}.snf-confirm-total span{font-weight:700;color:#374151}.snf-confirm-total strong{font-size:21px;color:#111827}.snf-order-confirm-card>footer{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;padding:16px 26px 22px;border-top:1px solid #edf0f3;background:#fff}.snf-order-confirm-card>footer button{min-height:50px;border-radius:12px;font-size:15px;font-weight:800;cursor:pointer}.snf-confirm-edit{border:1px solid #d1d5db;background:#fff;color:#374151}.snf-confirm-ok{border:1px solid #111827;background:#111827;color:#fff}.snf-order-confirm-card>footer button:disabled{opacity:.6;cursor:default}
@media(max-width:680px){.snf-order-confirm-modal{padding:16px}.snf-order-confirm-card{width:100%;max-height:calc(100dvh - 32px);border-radius:18px}.snf-order-confirm-card>header{padding:20px 18px 15px}.snf-order-confirm-card h2{font-size:19px}.snf-order-confirm-body{padding:16px 18px 20px}.snf-order-confirm-card>footer{padding:13px 18px 18px}.snf-confirm-info>div{grid-template-columns:78px minmax(0,1fr)}.snf-confirm-product dl>div{grid-template-columns:78px minmax(0,1fr)}}


/* v1821 — 최대한 빠르게 안내 문구 가독성 개선 */
.order-form .delivery-time-inline .asap-choice strong{font-size:15px!important;}
.order-form .delivery-time-inline .asap-choice small{font-size:12px!important;}
@media(max-width:720px){
  .order-form .delivery-time-inline .asap-choice strong{font-size:14px!important;}
  .order-form .delivery-time-inline .asap-choice small{font-size:11px!important;}
}
@media(max-width:430px){
  .order-form .delivery-time-inline .asap-choice strong{font-size:12px!important;}
  .order-form .delivery-time-inline .asap-choice small{font-size:9.5px!important;}
}
@media(max-width:370px){
  .order-form .delivery-time-inline .asap-choice strong{font-size:11px!important;}
  .order-form .delivery-time-inline .asap-choice small{font-size:8.5px!important;}
}

/* v1822 — 최대한 빠르게 안내: PC/모바일 모두 한 줄, 검정·확대·굵게 */
.order-form .delivery-time-inline .asap-choice > span{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:5px!important;
  white-space:nowrap!important;
  flex-wrap:nowrap!important;
  color:#111827!important;
}
.order-form .delivery-time-inline .asap-choice strong,
.order-form .delivery-time-inline .asap-choice .asap-short-note{
  display:inline!important;
  margin:0!important;
  color:#111827!important;
  font-weight:700!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  letter-spacing:-.025em!important;
}
.order-form .delivery-time-inline .asap-choice strong{font-size:16px!important;}
.order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:14px!important;}
@media(max-width:720px){
  .order-form .delivery-time-inline .asap-choice strong{font-size:15px!important;}
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:13px!important;font-weight:700!important;}
}
@media(max-width:430px){
  .order-form .delivery-time-inline .asap-choice strong{font-size:15px!important;}
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:13px!important;font-weight:700!important;}
}


/* v1824 — CSS-only responsive one-line ASAP label (Naver in-app safe) */
.order-form .delivery-time-inline .asap-choice{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.order-form .delivery-time-inline .asap-choice > input[type="checkbox"]{
  flex:0 0 auto!important;
  margin:0!important;
}
.order-form .delivery-time-inline .asap-choice > span{
  display:flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:.32em!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:visible!important;
  color:#111827!important;
}
.order-form .delivery-time-inline .asap-choice strong,
.order-form .delivery-time-inline .asap-choice .asap-short-note{
  display:inline!important;
  margin:0!important;
  color:#111827!important;
  font-weight:700!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  letter-spacing:-.04em!important;
}
.order-form .delivery-time-inline .asap-choice strong{font-size:16px!important;}
.order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:14px!important;}
@media (max-width:720px){
  .order-form .delivery-time-inline .asap-choice{gap:5px!important;}
  .order-form .delivery-time-inline .asap-choice > span{gap:.22em!important;}
  .order-form .delivery-time-inline .asap-choice strong{
    font-size:clamp(10.5px,3.15vw,15px)!important;
    font-weight:800!important;
  }
  .order-form .delivery-time-inline .asap-choice .asap-short-note{
    font-size:clamp(9.5px,2.85vw,13px)!important;
    font-weight:800!important;
  }
}


/* v1825 — mobile ASAP label ~10% larger than v1824, still one line */
@media (max-width:720px){
  .order-form .delivery-time-inline .asap-choice strong{
    font-size:clamp(11.55px,3.465vw,16.5px)!important;
  }
  .order-form .delivery-time-inline .asap-choice .asap-short-note{
    font-size:clamp(10.45px,3.135vw,14.3px)!important;
  }
}


/* v1826 — v1825 대비 최대한 빠르게 문구 약 5% 추가 확대 (한 줄 유지) */
@media (max-width: 767px){
  .order-page .asap-choice span{font-size:clamp(12.13px,3.638vw,17.33px)!important;}
  .order-page .asap-choice .asap-short-note{font-size:clamp(10.97px,3.292vw,15.02px)!important;}
}


/* 1840 — refined mobile navigation typography; order actions first */
@media(max-width:900px){
  .site-header .mobile-nav{
    gap:0!important;
    padding:8px 10px 10px!important;
  }
  .site-header .mobile-nav a{
    min-height:40px!important;
    padding:0 10px!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    color:#252a27!important;
    font-family:Arial,'Noto Sans KR',sans-serif!important;
    font-size:14px!important;
    font-weight:400!important;
    line-height:1.35!important;
    letter-spacing:-.015em!important;
  }
  .site-header .mobile-nav a + a{border-top:1px solid #f0f1ef!important;}
  .site-header .mobile-nav a.mobile-order-action{
    min-height:42px!important;
    color:#263d35!important;
    font-weight:500!important;
  }
  .site-header .mobile-nav a:hover,.site-header .mobile-nav a:focus{background:#f7f8f7!important;}
}


/* 1841 — Mobile Luxe navigation: thin SVG icons + refined typography */
@media(max-width:900px){
  .site-header .mobile-nav{
    width:min(232px,calc(100vw - 20px))!important;
    padding:9px!important;
    gap:1px!important;
    border:1px solid rgba(24,24,22,.08)!important;
    border-radius:14px!important;
    box-shadow:0 14px 38px rgba(24,24,22,.13)!important;
    background:rgba(255,255,255,.985)!important;
  }
  .site-header .mobile-nav a{
    min-height:43px!important;
    padding:0 11px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:11px!important;
    border:0!important;
    border-radius:9px!important;
    background:transparent!important;
    color:#252925!important;
    font-family:Arial,'Noto Sans KR',sans-serif!important;
    font-size:13.5px!important;
    font-weight:400!important;
    line-height:1.25!important;
    letter-spacing:-.02em!important;
    text-align:left!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-nav a + a{border-top:0!important;}
  .site-header .mobile-nav a:hover,.site-header .mobile-nav a:focus{background:#f6f7f5!important;}
  .site-header .mobile-nav .snf-menu-icon{
    width:19px!important;height:19px!important;flex:0 0 19px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;
    color:#667069!important;
  }
  .site-header .mobile-nav .snf-menu-icon svg{width:19px!important;height:19px!important;display:block!important;}
  .site-header .mobile-nav .mobile-order-action{
    color:#233c32!important;background:#f5f8f5!important;font-weight:500!important;
  }
  .site-header .mobile-nav .mobile-order-action .snf-menu-icon{color:#405846!important;}
  .site-header .mobile-nav .mobile-order-action-last{margin-bottom:7px!important;position:relative!important;}
  .site-header .mobile-nav .mobile-order-action-last:after{
    content:"";position:absolute;left:8px;right:8px;bottom:-4px;height:1px;background:#eceeea;
  }
  .site-header .mobile-nav .mobile-admin-check{margin-top:3px!important;color:#4c514e!important;}
}

/* 1842 — Signature header polish: preserve structure, refine typography and spacing */
@media (min-width:761px){
  .site-header .header-inner{height:76px;gap:20px;padding-left:22px;padding-right:22px}
  .site-header .brand-cluster{gap:22px}
  .site-header .brand b{font-size:19px;font-weight:600;letter-spacing:-.035em}
  .site-header .brand small{font-weight:400;letter-spacing:.07em}
  .site-header .brand-phone{padding-left:20px}
  .site-header .brand-phone strong{font-size:18px;font-weight:600;letter-spacing:.015em}
  .site-header .desktop-nav{gap:10px;font-size:12.5px}
  .site-header .desktop-nav a{display:inline-flex;align-items:center;min-height:40px;padding:0 15px;border:1px solid #e5e1da;border-radius:4px;font-weight:500;letter-spacing:-.02em;background:#fff;transition:border-color .18s ease,background .18s ease,color .18s ease}
  .site-header .desktop-nav a:hover{background:#faf9f6;border-color:#cfc8bd;color:#405846}
  .site-header .admin-order-link{min-height:40px;display:inline-flex;align-items:center;padding:0 16px;border-radius:4px;font-size:12.5px;font-weight:600;letter-spacing:-.02em;background:#1d1f1d}
  body.home .premium-hero .hero-inner{padding-top:32px!important;padding-bottom:32px!important}
  body.home .premium-hero .eyebrow{font-weight:600!important;letter-spacing:.19em!important}
  body.home .premium-hero h1{font-weight:400!important;letter-spacing:-.045em!important}
  body.home .premium-hero h1 span{font-weight:400!important}
  body.home .premium-hero .hero-copy>p{font-weight:400!important;line-height:1.7!important;color:#696963!important}
  body.home .premium-hero .hero-art img{box-shadow:0 20px 50px rgba(35,31,24,.08)!important}
}

body.home .products-section .order-flow-notice strong{font-weight:500!important;letter-spacing:-.025em!important;color:#20211f!important}
body.home .products-section .order-flow-notice span{font-weight:400!important;color:#77766f!important}

@media (max-width:720px){
  .site-header .header-inner{min-height:58px!important;height:58px!important;padding:0 11px!important;gap:6px!important}
  .site-header .brand-cluster{gap:7px!important}
  .site-header .brand{gap:7px!important}
  .site-header .brand-logo{width:31px!important;height:31px!important;flex-basis:31px!important;border-radius:8px!important}
  .site-header .brand b{font-size:13.5px!important;font-weight:600!important;letter-spacing:-.045em!important}
  .site-header .brand-phone{padding-left:8px!important;border-left:1px solid #ece8e1!important;font-size:11.5px!important}
  .site-header .brand-phone strong{font-size:11.5px!important;font-weight:600!important;letter-spacing:-.015em!important}
  .site-header .mobile-menu-btn{width:32px!important;min-width:32px!important;flex-basis:32px!important;height:32px!important;margin-left:3px!important;font-size:18px!important;font-weight:400!important;line-height:1!important}
  body.home .premium-hero .hero-inner{padding:28px 14px 24px!important;column-gap:12px!important;row-gap:16px!important}
  body.home .premium-hero .eyebrow{font-size:9px!important;font-weight:500!important;letter-spacing:.17em!important;margin-bottom:10px!important}
  body.home .premium-hero h1{margin:0 0 14px!important;font-weight:400!important;letter-spacing:-.055em!important}
  body.home .premium-hero h1::before{font-weight:400!important;letter-spacing:-.055em!important}
  body.home .premium-hero h1 span{font-weight:400!important;letter-spacing:-.055em!important}
  body.home .premium-hero .hero-copy>p{font-size:12.5px!important;line-height:1.75!important;color:#6c6b65!important;max-width:190px!important}
  body.home .premium-hero .hero-art{width:clamp(96px,29vw,112px)!important}
  body.home .premium-hero .hero-art img{border-radius:20px!important;box-shadow:0 14px 34px rgba(41,35,28,.08)!important}
  body.home .products-section .order-flow-notice{margin:0 0 9px!important;line-height:1.42!important}
  body.home .products-section .order-flow-notice strong{display:block!important;margin:0 0 2px!important;font-size:11.5px!important;font-weight:400!important;line-height:1.42!important;letter-spacing:-.025em!important;color:#4f514d!important}
  body.home .products-section .order-flow-notice span{display:block!important;margin:0!important;font-size:10.5px!important;font-weight:400!important;line-height:1.48!important;letter-spacing:-.02em!important;color:#96938c!important}
}


/* 1843 — mobile header fit kernel: reserve hamburger first, then fluidly shrink brand/phone */
@media (max-width:720px){
  .site-header .header-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) clamp(30px,9vw,38px)!important;
    align-items:center!important;
    column-gap:clamp(4px,1.4vw,8px)!important;
    width:100%!important;
    max-width:100%!important;
    padding-left:clamp(5px,1.8vw,9px)!important;
    padding-right:clamp(5px,1.8vw,9px)!important;
    overflow:visible!important;
  }
  .site-header .brand-cluster{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:clamp(3px,1vw,7px)!important;
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
  }
  .site-header .brand{
    display:grid!important;
    grid-template-columns:clamp(28px,9vw,42px) minmax(0,1fr)!important;
    align-items:center!important;
    gap:clamp(3px,1.2vw,7px)!important;
    min-width:0!important;
    width:100%!important;
    overflow:hidden!important;
  }
  .site-header .brand-logo{
    width:clamp(28px,9vw,42px)!important;
    height:clamp(28px,9vw,42px)!important;
    min-width:0!important;
    flex:none!important;
  }
  .site-header .brand>span{min-width:0!important;overflow:hidden!important;}
  .site-header .brand b{
    font-size:clamp(12.5px,4.35vw,20px)!important;
    font-weight:650!important;
    letter-spacing:-.055em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:clip!important;
  }
  .site-header .brand-phone{
    display:flex!important;
    align-items:center!important;
    gap:clamp(2px,.7vw,5px)!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
  .site-header .brand-phone:before{
    width:clamp(14px,4.5vw,21px)!important;
    height:clamp(14px,4.5vw,21px)!important;
    font-size:clamp(8px,2.6vw,12px)!important;
    flex:0 0 auto!important;
  }
  .site-header .brand-phone strong{
    font-size:clamp(11.5px,3.9vw,18px)!important;
    font-weight:650!important;
    letter-spacing:-.05em!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-menu-btn{
    grid-column:2!important;
    width:100%!important;
    min-width:0!important;
    max-width:38px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    justify-self:end!important;
    flex:none!important;
  }
}
@media (max-width:350px){
  .site-header .header-inner{grid-template-columns:minmax(0,1fr) 28px!important;column-gap:3px!important;padding-left:4px!important;padding-right:4px!important;}
  .site-header .brand-cluster{gap:2px!important;}
  .site-header .brand{grid-template-columns:27px minmax(0,1fr)!important;gap:3px!important;}
  .site-header .brand-logo{width:27px!important;height:27px!important;}
  .site-header .brand b{font-size:12.5px!important;}
  .site-header .brand-phone:before{width:13px!important;height:13px!important;font-size:7px!important;}
  .site-header .brand-phone strong{font-size:11px!important;letter-spacing:-.065em!important;}
}


/* 1844 — adaptive mobile header: start generous, compress only when space is truly tight.
   Stabilize header typography against Android/Naver text scaling while preserving user scaling elsewhere. */
@media (max-width:720px){
  .site-header,
  .site-header *{
    -webkit-text-size-adjust:100%!important;
    text-size-adjust:100%!important;
  }
  .site-header .header-inner{
    grid-template-columns:minmax(0,1fr) 36px!important;
    column-gap:6px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  .site-header .brand-cluster{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:5px!important;
  }
  .site-header .brand{
    grid-template-columns:clamp(36px,10.5vw,44px) minmax(0,1fr)!important;
    gap:5px!important;
  }
  .site-header .brand-logo{
    width:clamp(36px,10.5vw,44px)!important;
    height:clamp(36px,10.5vw,44px)!important;
  }
  .site-header .brand b{
    font-size:clamp(14px,4.15vw,17px)!important;
    letter-spacing:-.055em!important;
  }
  .site-header .brand-phone{gap:3px!important;}
  .site-header .brand-phone:before{
    width:18px!important;height:18px!important;font-size:10px!important;
  }
  .site-header .brand-phone strong{
    font-size:clamp(14px,4vw,16.5px)!important;
    letter-spacing:-.055em!important;
  }
  .site-header .mobile-menu-btn{
    width:36px!important;min-width:36px!important;max-width:36px!important;height:40px!important;
  }
}
/* First compression: trim whitespace and brand text before sacrificing logo/phone legibility. */
@media (max-width:380px){
  .site-header .header-inner{grid-template-columns:minmax(0,1fr) 34px!important;column-gap:4px!important;padding-left:5px!important;padding-right:5px!important;}
  .site-header .brand-cluster{gap:3px!important;}
  .site-header .brand{grid-template-columns:35px minmax(0,1fr)!important;gap:3px!important;}
  .site-header .brand-logo{width:35px!important;height:35px!important;}
  .site-header .brand b{font-size:13.5px!important;letter-spacing:-.065em!important;}
  .site-header .brand-phone:before{width:16px!important;height:16px!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:34px!important;min-width:34px!important;max-width:34px!important;}
}
/* Last-resort compression for genuinely narrow viewports only. */
@media (max-width:340px){
  .site-header .header-inner{grid-template-columns:minmax(0,1fr) 32px!important;column-gap:3px!important;padding-left:4px!important;padding-right:4px!important;}
  .site-header .brand-cluster{gap:2px!important;}
  .site-header .brand{grid-template-columns:32px minmax(0,1fr)!important;gap:2px!important;}
  .site-header .brand-logo{width:32px!important;height:32px!important;}
  .site-header .brand b{font-size:12.5px!important;}
  .site-header .brand-phone:before{width:14px!important;height:14px!important;font-size:8px!important;}
  .site-header .brand-phone strong{font-size:12px!important;letter-spacing:-.075em!important;}
  .site-header .mobile-menu-btn{width:32px!important;min-width:32px!important;max-width:32px!important;}
}


/* 1846 — Bottom Smart Fit only.
   Header remains exactly on the proven 1844 Adaptive Header rules. */
@media (max-width:520px){
  .mobile-bottom{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)!important;}
  .mobile-bottom a{
    min-width:0!important;
    padding-left:2px!important;padding-right:2px!important;
    font-size:clamp(9.5px,3vw,11px)!important;
    line-height:1.28!important;
    letter-spacing:-.045em!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    text-align:center!important;word-break:keep-all!important;overflow-wrap:normal!important;
  }
}
@media (max-width:360px){
  .mobile-bottom a{
    font-size:clamp(9px,2.85vw,10px)!important;
    padding-top:10px!important;padding-bottom:10px!important;
  }
}
@media (max-width:330px){
  .mobile-bottom a{font-size:9px!important;letter-spacing:-.06em!important;}
}


/* 1848 — product guide fix in the actually enqueued main.css */
@media (max-width:720px){
  body.home .products-section .order-flow-notice{margin:0 0 9px!important;line-height:1.42!important}
  body.home .products-section .order-flow-notice strong{display:block!important;margin:0 0 2px!important;font-size:11.5px!important;font-weight:400!important;line-height:1.42!important;letter-spacing:-.025em!important;color:#4f514d!important}
  body.home .products-section .order-flow-notice span{display:block!important;margin:0!important;font-size:10.5px!important;font-weight:400!important;line-height:1.48!important;letter-spacing:-.02em!important;color:#96938c!important}
  body.home .products-section .section-kicker{margin-top:1px!important}
}
/* 1851 HOME DESIGN TEST — loaded in the theme's actual enqueued stylesheet */
.snf-home1851-hero{position:relative!important;min-height:345px!important;overflow:hidden!important;background:linear-gradient(90deg,#f3f4f1 0%,#fbf8f2 46%,#fff2f5 100%)!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:38px 24px!important;box-sizing:border-box!important}
.snf-home1851-hero:before,.snf-home1851-hero:after{display:none!important}
.snf-home1851-center{position:relative;z-index:3;width:min(600px,48vw);text-align:center;margin:auto}
.snf-home1851-center .eyebrow{font-size:12px;letter-spacing:.18em;color:#9a745f;font-weight:700;margin-bottom:12px}
.snf-home1851-center h1{font-size:48px!important;line-height:1.13!important;margin:0!important;color:#181818!important;font-weight:500!important}
.snf-home1851-center h1 span{color:#d94b69!important}
.snf-home1851-center>p{font-size:16px;line-height:1.7;color:#666;margin:18px auto 16px;max-width:520px}
.snf-home1851-search{display:flex;max-width:500px;margin:0 auto;background:#fff;border:1px solid #ddd;border-radius:3px;overflow:hidden;box-shadow:0 6px 18px rgba(0,0,0,.05)}
.snf-home1851-search input{flex:1;min-width:0;border:0!important;padding:14px 16px!important;font-size:14px!important;background:#fff!important}
.snf-home1851-search button{width:82px;border:0;background:#1c1d1b;color:#fff;font-weight:700;font-size:14px}
.snf-home1851-wreath{position:absolute!important;z-index:1!important;bottom:-135px!important;width:355px!important;height:520px!important;object-fit:contain!important;pointer-events:none!important;filter:drop-shadow(0 12px 20px rgba(0,0,0,.08))}
.snf-home1851-wreath-left{left:max(-45px,calc(50% - 760px))!important}
.snf-home1851-wreath-right{right:max(-45px,calc(50% - 760px))!important}
.snf-home1851-choice{max-width:1220px;margin:28px auto 12px;padding:0 22px;box-sizing:border-box}
.snf-home1851-notice{display:flex;align-items:center;gap:8px;padding:14px 20px;border-radius:12px;background:linear-gradient(90deg,#fff0f4,#fff8f7);font-size:15px;margin-bottom:16px}
.snf-home1851-notice strong{font-size:18px;color:#e62f5c} .snf-home1851-notice span{color:#777;margin-left:6px}
.snf-home1851-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.snf-home1851-panel{border-radius:16px;overflow:hidden;border:1px solid #eee;padding:20px 20px 0;box-sizing:border-box}
.snf-home1851-panel.authentic{background:linear-gradient(135deg,#fff7f8,#fff0f3);border-color:#f3d8de}
.snf-home1851-panel.regular{background:linear-gradient(135deg,#f8fbf7,#edf5ed);border-color:#dbe8dc}
.snf-home1851-panelhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px}
.snf-home1851-panelhead small{font-weight:700;color:#777} .snf-home1851-panel.authentic small,.snf-home1851-panel.authentic h2{color:#e52f5a}
.snf-home1851-panel.regular small,.snf-home1851-panel.regular h2{color:#285b35}
.snf-home1851-panelhead h2{font-size:29px;margin:2px 0 3px} .snf-home1851-panelhead p{font-size:13px;color:#666;margin:0}
.snf-home1851-panelhead a{white-space:nowrap;border:1px solid currentColor;border-radius:999px;padding:10px 16px;text-decoration:none;font-weight:700;font-size:13px;color:#333;background:rgba(255,255,255,.72)}
.snf-home1851-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}
.snf-home1851-pair>div{text-align:center;overflow:hidden} .snf-home1851-pair img{display:block;width:100%;height:245px;object-fit:contain;object-position:center bottom;margin:0 auto}
.snf-home1851-pair b{display:block;padding:9px 5px 13px;font-size:15px;color:#333}
@media(max-width:900px){.snf-home1851-hero{min-height:510px!important;padding:30px 16px 190px!important}.snf-home1851-center{width:100%;max-width:600px}.snf-home1851-center h1{font-size:38px!important}.snf-home1851-wreath{width:230px!important;height:300px!important;bottom:-70px!important}.snf-home1851-wreath-left{left:calc(50% - 235px)!important}.snf-home1851-wreath-right{right:calc(50% - 235px)!important}.snf-home1851-panels{grid-template-columns:1fr!important}}
@media(max-width:600px){.snf-home1851-hero{min-height:475px!important;padding:24px 14px 165px!important}.snf-home1851-center .eyebrow{font-size:10px}.snf-home1851-center h1{font-size:31px!important}.snf-home1851-center>p{font-size:14px;margin:12px auto}.snf-home1851-search input{font-size:12px!important;padding:12px!important}.snf-home1851-search button{width:64px}.snf-home1851-wreath{width:190px!important;height:245px!important;bottom:-55px!important}.snf-home1851-wreath-left{left:calc(50% - 190px)!important}.snf-home1851-wreath-right{right:calc(50% - 190px)!important}.snf-home1851-choice{padding:0 12px;margin-top:18px}.snf-home1851-notice{display:block;text-align:center;padding:12px;font-size:13px}.snf-home1851-notice strong{display:block;font-size:17px;margin-bottom:3px}.snf-home1851-notice span{margin:0}.snf-home1851-panel{padding:16px 12px 0}.snf-home1851-panelhead{display:block;text-align:center}.snf-home1851-panelhead h2{font-size:25px}.snf-home1851-panelhead a{display:inline-block;margin-top:9px;padding:8px 14px}.snf-home1851-pair img{height:205px}.snf-home1851-pair b{font-size:13px}}

/* 1852 — image composition + collection filters */
.snf-home1851-hero{isolation:isolate!important}
.snf-home1851-wreath{bottom:-160px!important;width:330px!important;height:505px!important;object-fit:contain!important;object-position:center bottom!important;opacity:.98}
.snf-home1851-wreath-left{left:max(-75px,calc(50% - 750px))!important}
.snf-home1851-wreath-right{right:max(-75px,calc(50% - 750px))!important}
.snf-home1851-pair{gap:14px!important}
.snf-home1851-pair>div{position:relative;border-radius:12px 12px 0 0;background:rgba(255,255,255,.48)!important}
.snf-home1851-pair img{width:100%!important;height:230px!important;object-fit:contain!important;object-position:center bottom!important;padding:8px 4px 0!important;box-sizing:border-box!important;mix-blend-mode:multiply}
body.home .snf-collection-head{align-items:flex-end!important;gap:18px!important}
body.home .snf-collection-tabs{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
body.home .snf-collection-tabs a{display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:36px;padding:0 14px;border:1px solid #ddd7d0;border-radius:999px;background:#fff;color:#555;text-decoration:none;font-size:13px;font-weight:700}
body.home .snf-collection-tabs a.is-active{background:#1e201e;border-color:#1e201e;color:#fff}
html{scroll-behavior:smooth}
@media(max-width:900px){.snf-home1851-wreath{bottom:-85px!important;width:215px!important;height:290px!important}.snf-home1851-wreath-left{left:calc(50% - 225px)!important}.snf-home1851-wreath-right{right:calc(50% - 225px)!important}}
@media(max-width:600px){.snf-home1851-wreath{bottom:-58px!important;width:168px!important;height:220px!important}.snf-home1851-wreath-left{left:calc(50% - 172px)!important}.snf-home1851-wreath-right{right:calc(50% - 172px)!important}.snf-home1851-pair img{height:190px!important;padding-top:5px!important}body.home .snf-collection-head{display:block!important}body.home .snf-collection-tabs{justify-content:flex-start;margin-top:12px}body.home .snf-collection-tabs a{min-width:64px;height:34px;padding:0 12px;font-size:12px}}

/* 1853 — hero background finish + unmistakable collection jump */
.snf-home1851-hero{
  background:
    radial-gradient(circle at 8% 50%,rgba(210,214,208,.48) 0,rgba(238,240,236,.32) 19%,transparent 38%),
    radial-gradient(circle at 92% 48%,rgba(255,198,211,.38) 0,rgba(255,231,237,.38) 20%,transparent 39%),
    linear-gradient(90deg,#eef1ed 0%,#f8f6f0 30%,#fbf8f2 50%,#fff5f7 72%,#ffecef 100%)!important;
}
.snf-home1851-hero:before{content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.52) 31%,rgba(255,255,255,.62) 50%,rgba(255,255,255,.45) 69%,rgba(255,255,255,.02))!important}
.snf-home1851-wreath{mix-blend-mode:multiply!important;filter:drop-shadow(0 14px 22px rgba(38,45,35,.09))!important}
body.home #products{scroll-margin-top:96px!important;position:relative}
body.home #products.snf-arrived{animation:snfCollectionArrive 1.15s ease-out 1}
@keyframes snfCollectionArrive{0%{box-shadow:0 0 0 5px rgba(229,47,90,.18);background:#fff9fa}100%{box-shadow:0 0 0 0 rgba(229,47,90,0);background:#fff}}
body.home .snf-collection-current{display:inline-flex;align-items:center;gap:6px;margin:0 0 13px;padding:7px 11px;border-radius:999px;background:#f6f2ed;color:#555;font-size:12px;font-weight:700}
body.home .snf-collection-current:before{content:"";width:7px;height:7px;border-radius:50%;background:#e52f5a}
body.home .snf-collection-current.regular:before{background:#285b35}
@media(max-width:600px){body.home #products{scroll-margin-top:78px!important}}

/* 1854 — HERO BEAUTY ONLY. 1853 collection/filter behavior intentionally untouched. */
.snf-home1851-hero{
  min-height:380px!important;
  padding:42px 24px!important;
  background:
    radial-gradient(ellipse at 3% 58%,rgba(189,198,188,.34) 0,rgba(230,233,227,.20) 29%,transparent 50%),
    radial-gradient(ellipse at 97% 54%,rgba(248,175,194,.32) 0,rgba(255,223,232,.25) 30%,transparent 51%),
    linear-gradient(90deg,#edf0eb 0%,#f6f4ee 25%,#fbf8f2 44%,#fbf8f2 56%,#fff4f6 75%,#ffe9ee 100%)!important;
  border-bottom:1px solid rgba(170,150,145,.10)!important;
}
.snf-home1851-hero:before{
  content:""!important;display:block!important;position:absolute!important;inset:0!important;z-index:0!important;pointer-events:none!important;
  background:
    linear-gradient(90deg,transparent 0%,rgba(255,255,255,.18) 22%,rgba(255,255,255,.72) 36%,rgba(255,255,255,.78) 50%,rgba(255,255,255,.70) 64%,rgba(255,255,255,.14) 79%,transparent 100%)!important;
}
.snf-home1851-hero:after{
  content:""!important;display:block!important;position:absolute!important;left:23%;right:23%;top:22px;bottom:22px;z-index:1!important;pointer-events:none!important;
  background:radial-gradient(ellipse at center,rgba(255,255,255,.52),rgba(255,255,255,.18) 58%,transparent 76%)!important;
}
.snf-home1851-center{z-index:4!important;width:min(610px,49vw)!important}
.snf-home1851-center h1{letter-spacing:-.035em!important;text-shadow:0 1px 0 rgba(255,255,255,.55)}
.snf-home1851-center>p{color:#6f6a64!important}
.snf-home1851-wreath{
  z-index:2!important;width:390px!important;height:555px!important;bottom:-166px!important;
  opacity:1!important;mix-blend-mode:normal!important;
  filter:drop-shadow(0 17px 19px rgba(31,42,31,.13))!important;
}
.snf-home1851-wreath-left{left:max(-112px,calc(50% - 795px))!important;transform:rotate(-1.2deg)}
.snf-home1851-wreath-right{right:max(-112px,calc(50% - 795px))!important;transform:rotate(1.2deg)}
@media(max-width:1100px){
  .snf-home1851-wreath{width:330px!important;height:500px!important;bottom:-150px!important}
  .snf-home1851-wreath-left{left:-88px!important}.snf-home1851-wreath-right{right:-88px!important}
  .snf-home1851-center{width:min(590px,56vw)!important}
}
@media(max-width:900px){
  .snf-home1851-hero{min-height:510px!important;padding:30px 16px 180px!important}
  .snf-home1851-center{width:100%!important;max-width:600px!important}
  .snf-home1851-hero:after{left:5%;right:5%;top:10px;bottom:120px!important}
  .snf-home1851-wreath{width:238px!important;height:305px!important;bottom:-63px!important}
  .snf-home1851-wreath-left{left:calc(50% - 240px)!important;transform:none!important}
  .snf-home1851-wreath-right{right:calc(50% - 240px)!important;transform:none!important}
}
@media(max-width:600px){
  .snf-home1851-hero{min-height:472px!important;padding:24px 14px 158px!important;background:linear-gradient(135deg,#f3f3ef 0%,#fbf8f2 50%,#fff0f4 100%)!important}
  .snf-home1851-hero:before{background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.18) 64%,transparent)!important}
  .snf-home1851-hero:after{display:none!important}
  .snf-home1851-wreath{width:178px!important;height:230px!important;bottom:-48px!important;filter:drop-shadow(0 10px 12px rgba(31,42,31,.10))!important}
  .snf-home1851-wreath-left{left:calc(50% - 179px)!important}
  .snf-home1851-wreath-right{right:calc(50% - 179px)!important}
}

/* 1855 — HERO POSITION + STABLE COLLECTION NAV ONLY */
@media(min-width:1101px){
  .snf-home1851-wreath-left{left:max(-18px,calc(50% - 700px))!important;transform:rotate(-.8deg)!important}
  .snf-home1851-wreath-right{right:max(-18px,calc(50% - 700px))!important;transform:rotate(.8deg)!important}
}
@media(min-width:901px) and (max-width:1100px){
  .snf-home1851-wreath-left{left:-28px!important}
  .snf-home1851-wreath-right{right:-28px!important}
}
body.home #products{scroll-margin-top:96px!important}

/* 1857 — MOBILE STABLE ONLY. Desktop and 1855 collection navigation stay untouched. */
@media (max-width:720px){
  .snf-home1851-hero{
    min-height:auto!important;
    padding:22px 14px 0!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto 152px!important;
    align-items:end!important;
    background:linear-gradient(135deg,#f1f2ee 0%,#fbf8f2 52%,#fff0f4 100%)!important;
    overflow:hidden!important;
  }
  .snf-home1851-hero:before{
    display:block!important;content:""!important;position:absolute!important;inset:0!important;z-index:0!important;
    background:linear-gradient(180deg,rgba(255,255,255,.64) 0%,rgba(255,255,255,.28) 58%,rgba(255,255,255,.02) 100%)!important;
    pointer-events:none!important;
  }
  .snf-home1851-hero:after{display:none!important}
  .snf-home1851-center{
    grid-column:1 / -1!important;grid-row:1!important;position:relative!important;z-index:4!important;
    width:100%!important;max-width:520px!important;margin:0 auto!important;padding:0 0 14px!important;text-align:center!important;
  }
  .snf-home1851-center .eyebrow{font-size:9px!important;letter-spacing:.14em!important;margin:0 0 7px!important}
  .snf-home1851-center h1{font-size:clamp(26px,8.2vw,34px)!important;line-height:1.12!important;letter-spacing:-.055em!important}
  .snf-home1851-center>p{font-size:12.5px!important;line-height:1.55!important;margin:10px auto 11px!important;max-width:330px!important}
  .snf-home1851-search{max-width:360px!important;height:44px!important;border-radius:5px!important;box-shadow:0 5px 14px rgba(0,0,0,.045)!important}
  .snf-home1851-search input{padding:10px 11px!important;font-size:11.5px!important}
  .snf-home1851-search button{width:62px!important;font-size:12px!important}
  .snf-home1851-wreath{
    position:relative!important;z-index:2!important;grid-row:2!important;bottom:auto!important;left:auto!important;right:auto!important;
    width:100%!important;height:176px!important;max-width:none!important;object-fit:contain!important;object-position:center bottom!important;
    margin:0!important;transform:none!important;filter:drop-shadow(0 7px 9px rgba(31,42,31,.08))!important;align-self:end!important;
  }
  .snf-home1851-wreath-left{grid-column:1!important;justify-self:end!important;transform:translateX(12px)!important}
  .snf-home1851-wreath-right{grid-column:2!important;justify-self:start!important;transform:translateX(-12px)!important}

  .snf-home1851-choice{padding:0 10px!important;margin:12px auto 10px!important}
  .snf-home1851-notice{margin:0 0 10px!important;padding:10px 9px!important;border-radius:10px!important;line-height:1.4!important}
  .snf-home1851-notice strong{font-size:15px!important;margin-bottom:2px!important}
  .snf-home1851-notice span{display:block!important;margin:2px 0 0!important;font-size:11px!important}
  .snf-home1851-panels{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .snf-home1851-panel{padding:14px 12px 0!important;border-radius:14px!important}
  .snf-home1851-panelhead{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;margin-bottom:5px!important}
  .snf-home1851-panelhead small{font-size:10px!important}
  .snf-home1851-panelhead h2{font-size:23px!important;margin:1px 0 2px!important}
  .snf-home1851-panelhead p{font-size:10.5px!important;line-height:1.4!important;word-break:keep-all!important}
  .snf-home1851-panelhead a{padding:8px 10px!important;font-size:11px!important;min-height:34px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .snf-home1851-pair{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .snf-home1851-pair>div{border-radius:10px 10px 0 0!important}
  .snf-home1851-pair img{height:165px!important;padding:5px 2px 0!important}
  .snf-home1851-pair b{padding:6px 3px 10px!important;font-size:12px!important}
  body.home #products{scroll-margin-top:74px!important}
  body.home .snf-collection-head{display:block!important}
  body.home .snf-collection-tabs{margin-top:10px!important;justify-content:flex-start!important;gap:5px!important}
  body.home .snf-collection-tabs a{height:32px!important;min-width:58px!important;padding:0 10px!important;font-size:11px!important}
}
@media (max-width:380px){
  .snf-home1851-hero{padding-left:10px!important;padding-right:10px!important;grid-template-rows:auto 138px!important}
  .snf-home1851-center h1{font-size:27px!important}
  .snf-home1851-center>p{font-size:11.5px!important}
  .snf-home1851-wreath{height:158px!important}
  .snf-home1851-wreath-left{transform:translateX(8px)!important}
  .snf-home1851-wreath-right{transform:translateX(-8px)!important}
  .snf-home1851-panelhead h2{font-size:21px!important}
  .snf-home1851-panelhead a{font-size:10.5px!important;padding:7px 9px!important}
  .snf-home1851-pair img{height:150px!important}
}

/* 1858 — collection filter controls only: independent hit areas, no URL navigation */
.snf-home1851-panelhead .snf-panel-filter{appearance:none;-webkit-appearance:none;white-space:nowrap;border:1px solid currentColor;border-radius:999px;padding:10px 16px;font-weight:700;font-size:13px;color:#333;background:rgba(255,255,255,.82);cursor:pointer;position:relative;z-index:3;line-height:1.2}
body.home .snf-collection-tabs{isolation:isolate}
body.home .snf-collection-tabs .snf-collection-filter{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:36px;padding:0 14px;border:1px solid #ddd7d0;border-radius:999px;background:#fff;color:#555;font-size:13px;font-weight:700;cursor:pointer;position:relative;z-index:1;line-height:1;touch-action:manipulation}
body.home .snf-collection-tabs .snf-collection-filter.is-active{background:#1e201e;border-color:#1e201e;color:#fff}
body.home .snf-filter-item[hidden]{display:none!important}
body.home #snf-product-grid>.snf-filter-item{min-width:0}
body.home #snf-product-grid>.snf-filter-item>.product-card{height:100%}
@media(max-width:600px){.snf-home1851-panelhead .snf-panel-filter{margin-top:9px;padding:9px 14px;min-height:40px}body.home .snf-collection-tabs .snf-collection-filter{min-width:70px;min-height:38px;height:38px;padding:0 13px;font-size:12px}}

/* 1860 notice dot placement */
body.home .snf-collection-current[hidden]{display:none!important}
body.home .products-section .order-flow-notice strong::before{content:"";display:inline-block;width:7px;height:7px;margin:0 8px 1px 0;border-radius:50%;background:#e52f5a;vertical-align:middle}
@media(max-width:720px){body.home .products-section .order-flow-notice strong::before{width:6px;height:6px;margin-right:6px}}


/* 1862 — facility result filter: policy-filtered products first, then visual collection filter */
.facility-detail-page .facility-collection-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.facility-detail-page .facility-collection-tabs{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.facility-detail-page .facility-collection-filter{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:72px;height:36px;padding:0 14px;border:1px solid #ddd7d0;border-radius:999px;background:#fff;color:#555;font-size:13px;font-weight:700;cursor:pointer;line-height:1;touch-action:manipulation}
.facility-detail-page .facility-collection-filter.is-active{background:#1e201e;border-color:#1e201e;color:#fff}
.facility-detail-page .facility-filter-item{min-width:0}
.facility-detail-page .facility-filter-item[hidden]{display:none!important}
@media(max-width:700px){.facility-detail-page .facility-collection-head{display:block}.facility-detail-page .facility-collection-tabs{justify-content:flex-start;margin-top:12px;gap:5px}.facility-detail-page .facility-collection-filter{min-width:70px;min-height:38px;height:38px;padding:0 13px;font-size:12px}}


/* 1864 — pink diet + policy-aware facility collections */
.snf-home1851-notice strong{font-size:15px!important;font-weight:500!important;color:#d94b69!important;letter-spacing:-.025em!important}
.snf-home1851-panel.authentic small{color:#555!important;font-weight:600!important}
.snf-home1851-panel.authentic h2{color:#222!important;font-weight:700!important}
@media(max-width:600px){.snf-home1851-notice strong{font-size:13px!important;font-weight:500!important}}


/* 1865 — facility choice cards: no-policy facilities only; occasion-aware images */
.facility-detail-page .facility-wreath-choice{margin:30px 0 28px}
.facility-detail-page .facility-wreath-choice-notice{padding:0 2px 12px;color:#666;font-size:14px;letter-spacing:-.02em}
.facility-detail-page .facility-wreath-choice-notice strong{font-weight:500;color:#555}
.facility-detail-page .facility-wreath-choice-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.facility-detail-page .facility-wreath-choice-panel{border-radius:16px;overflow:hidden;border:1px solid #eee;padding:20px 20px 0;box-sizing:border-box}
.facility-detail-page .facility-wreath-choice-panel.authentic{background:linear-gradient(135deg,#fff9fa,#fff2f4);border-color:#f0dadd}
.facility-detail-page .facility-wreath-choice-panel.regular{background:linear-gradient(135deg,#f8fbf7,#edf5ed);border-color:#dbe8dc}
.facility-detail-page .facility-wreath-choice-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.facility-detail-page .facility-wreath-choice-head small{font-size:13px;font-weight:600;color:#555}
.facility-detail-page .facility-wreath-choice-head h2{font-size:29px;line-height:1.2;margin:3px 0 5px;color:#222;letter-spacing:-.04em}
.facility-detail-page .facility-wreath-choice-panel.regular .facility-wreath-choice-head small,.facility-detail-page .facility-wreath-choice-panel.regular .facility-wreath-choice-head h2{color:#285b35}
.facility-detail-page .facility-wreath-choice-head p{font-size:13px;color:#666;margin:0}
.facility-detail-page .facility-choice-filter{appearance:none;-webkit-appearance:none;white-space:nowrap;border:1px solid #555;border-radius:999px;padding:10px 16px;background:rgba(255,255,255,.75);color:#333;font-size:13px;font-weight:600;cursor:pointer}
.facility-detail-page .facility-wreath-choice-product{margin-top:8px;text-align:center;background:rgba(255,255,255,.42);border-radius:12px 12px 0 0}
.facility-detail-page .facility-wreath-choice-product img{display:block;width:100%;height:245px;object-fit:contain;object-position:center bottom;padding:7px 4px 0;box-sizing:border-box;mix-blend-mode:multiply}
.facility-detail-page .facility-wreath-choice-product b{display:block;padding:8px 5px 13px;font-size:15px;color:#333}
@media(max-width:760px){.facility-detail-page .facility-wreath-choice{margin:22px 0}.facility-detail-page .facility-wreath-choice-panels{grid-template-columns:1fr;gap:12px}.facility-detail-page .facility-wreath-choice-panel{padding:16px 12px 0}.facility-detail-page .facility-wreath-choice-head{display:block;text-align:center}.facility-detail-page .facility-wreath-choice-head h2{font-size:25px}.facility-detail-page .facility-choice-filter{margin-top:9px;padding:8px 14px}.facility-detail-page .facility-wreath-choice-product img{height:205px}.facility-detail-page .facility-wreath-choice-product b{font-size:13px}.facility-detail-page .facility-wreath-choice-notice{text-align:center;font-size:13px}}


/* 1867 — two distinct live products per facility choice panel */
.facility-detail-page .facility-wreath-choice-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:8px}
.facility-detail-page .facility-wreath-choice-product{display:block;text-decoration:none;color:inherit;margin-top:0;min-width:0}
.facility-detail-page .facility-wreath-choice-product:hover{transform:translateY(-1px)}
.facility-detail-page .facility-wreath-choice-product img{height:245px}
.facility-detail-page .facility-wreath-choice-product b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:760px){.facility-detail-page .facility-wreath-choice-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.facility-detail-page .facility-wreath-choice-product img{height:180px}.facility-detail-page .facility-wreath-choice-product b{font-size:12px;padding-left:2px;padding-right:2px}}


/* 1868 — facility preview cards mirror home structure; preview images are intentionally non-clickable */
.facility-detail-page .facility-wreath-choice-notice{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding:14px 18px;border-radius:12px;background:#fff6f7;color:#777}
.facility-detail-page .facility-wreath-choice-notice strong{color:#d94b69;font-size:14px;font-weight:500}
.facility-detail-page .facility-wreath-choice-notice span{font-size:13px;color:#888}
.facility-detail-page .facility-wreath-choice-product{cursor:default;pointer-events:none}
.facility-detail-page .facility-wreath-choice-product:hover{transform:none}
.facility-detail-page .facility-choice-filter.is-active{background:#222;color:#fff;border-color:#222}
@media(max-width:760px){.facility-detail-page .facility-wreath-choice-notice{display:block;padding:12px 14px;text-align:left}.facility-detail-page .facility-wreath-choice-notice strong,.facility-detail-page .facility-wreath-choice-notice span{display:block}.facility-detail-page .facility-wreath-choice-notice span{margin-top:4px}}


/* 1871 — mobile hero breathing room + refined wreath stage. No layout/function changes elsewhere. */
@media (max-width:720px){
  .snf-home1851-hero{
    row-gap:14px!important;
    padding-bottom:12px!important;
    background:
      radial-gradient(ellipse at 50% 88%,rgba(255,255,255,.94) 0%,rgba(255,255,255,.58) 38%,rgba(255,255,255,0) 68%),
      linear-gradient(135deg,#f1f2ee 0%,#fbf8f2 52%,#fff0f4 100%)!important;
  }
  .snf-home1851-center{padding-bottom:0!important}
  .snf-home1851-search{
    margin-bottom:2px!important;
    box-shadow:0 7px 18px rgba(49,44,39,.07)!important;
  }
  .snf-home1851-wreath{
    height:168px!important;
    padding-top:7px!important;
    filter:drop-shadow(0 10px 12px rgba(31,42,31,.10))!important;
  }
  .snf-home1851-wreath-left{transform:translateX(8px)!important}
  .snf-home1851-wreath-right{transform:translateX(-8px)!important}
  .snf-home1851-choice{margin-top:14px!important}
}
@media (max-width:380px){
  .snf-home1851-hero{row-gap:12px!important;grid-template-rows:auto 136px!important;padding-bottom:10px!important}
  .snf-home1851-wreath{height:150px!important;padding-top:6px!important}
}





/* 1902 — mobile bottom actions + native request-note disclosure */
.optional-note-wrap{display:block!important}
.optional-note-wrap>summary{list-style:none!important}
.optional-note-wrap>summary::-webkit-details-marker{display:none!important}
.optional-note-wrap:not([open]) .optional-note-field{display:none!important}
.optional-note-wrap .optional-note-toggle:before{content:"+";display:inline-block;width:18px;font-weight:400}
.optional-note-wrap[open] .optional-note-toggle:before{content:"−"}
.optional-note-wrap .optional-note-close-text{display:none}
.optional-note-wrap[open] .optional-note-open-text{display:none}
.optional-note-wrap[open] .optional-note-close-text{display:inline}
@media(max-width:520px){
 .mobile-bottom.mobile-bottom-actions{grid-template-columns:1fr 1fr!important;min-height:48px!important;background:#fff!important}
 .mobile-bottom.mobile-bottom-actions a{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:48px!important;padding:8px 6px!important;background:#fff!important;color:var(--ink)!important;font-size:12px!important;font-weight:400!important;letter-spacing:-.02em!important;line-height:1.2!important}
 .mobile-bottom.mobile-bottom-actions a+a{border-left:1px solid var(--line)!important}
 .mobile-bottom.mobile-bottom-actions .snf-bottom-icon{display:inline-flex!important;width:19px!important;height:19px!important;flex:0 0 19px!important}
 .mobile-bottom.mobile-bottom-actions .snf-bottom-icon svg{width:100%!important;height:100%!important;display:block!important}
}

/* 1903 mobile bottom: phone highlighted + SMS + order lookup */
@media(max-width:520px){
 .mobile-bottom.mobile-bottom-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;min-height:48px!important}
 .mobile-bottom.mobile-bottom-actions a.snf-bottom-call{background:var(--ink)!important;color:#fff!important}
 .mobile-bottom.mobile-bottom-actions a{font-weight:400!important}
}


/* 1906 — 배송 희망시간: 주문서 입력칸과 같은 낮은 직사각형 비율로 통일 */
.order-form .delivery-time-inline,
.order-form #delivery-time-clock,
.order-form .delivery-time-inline .asap-choice{
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  box-sizing:border-box!important;
}
.order-form #delivery-time-clock,
.order-form .delivery-time-inline .asap-choice{
  border-radius:0!important;
  border:1px solid #263238!important;
  box-shadow:none!important;
}
.order-form .delivery-time-inline .asap-choice{
  padding-top:5px!important;
  padding-bottom:5px!important;
}
@media(max-width:720px){
  .order-form .delivery-time-inline,
  .order-form #delivery-time-clock,
  .order-form .delivery-time-inline .asap-choice{
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
}


/* 1907 — 배송 희망일/시간 높이 정렬 + 최대한 빠르게 외곽 박스 제거 */
.order-form .delivery-date-trigger,
.order-form .delivery-time-inline,
.order-form #delivery-time-clock,
.order-form .delivery-time-inline .asap-choice{
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  box-sizing:border-box!important;
}
.order-form .delivery-date-trigger{
  padding-top:4px!important;
  padding-bottom:4px!important;
}
.order-form .delivery-time-inline .asap-choice{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding-top:5px!important;
  padding-bottom:5px!important;
}
@media(max-width:720px){
  .order-form .delivery-date-trigger,
  .order-form .delivery-time-inline,
  .order-form #delivery-time-clock,
  .order-form .delivery-time-inline .asap-choice{
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
}


/* 1908 — 주문서 입력창 높이 통일: 일반 직사각형 입력칸 기준 46px */
.order-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
.order-form select,
.order-form .delivery-date-trigger,
.order-form #delivery-time-clock{
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  box-sizing:border-box!important;
}
.order-form .delivery-date-trigger{
  padding-top:3px!important;
  padding-bottom:3px!important;
}
.order-form #delivery-time-clock{
  padding-top:0!important;
  padding-bottom:0!important;
}
.order-form .delivery-time-inline{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  align-items:center!important;
}
.order-form .delivery-time-inline .asap-choice{
  height:auto!important;
  min-height:46px!important;
  max-height:none!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
@media(max-width:800px){
  .order-form input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
  .order-form select,
  .order-form .delivery-date-trigger,
  .order-form #delivery-time-clock{
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
}

/* 1909 — mobile delivery time row: keep ASAP inline so the time block matches the date row visually */
@media(max-width:800px){
  .order-form .quick-date-time{
    align-items:end!important;
  }
  .order-form .delivery-time-inline{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
    margin-bottom:0!important;
  }
  .order-form .delivery-time-inline #delivery-time-clock{
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    width:auto!important;
    min-width:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    align-self:center!important;
  }
}
@media(max-width:390px){
  .order-form .delivery-time-inline{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    justify-self:end!important;
  }
  .order-form .delivery-time-inline .asap-choice strong{font-size:11px!important;}
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:9px!important;}
}

/* 1910 — mobile: delivery time is a normal full-width field; ASAP stays below without a box */
@media(max-width:800px){
  .order-form .delivery-time-inline{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:7px!important;
    width:100%!important;
    margin-bottom:0!important;
  }
  .order-form .delivery-time-inline #delivery-time-clock{
    display:block!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    box-sizing:border-box!important;
    flex:none!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    align-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}
@media(max-width:390px){
  .order-form .delivery-time-inline{
    display:flex!important;
    flex-direction:column!important;
    gap:7px!important;
  }
  .order-form .delivery-time-inline .asap-choice{
    justify-self:auto!important;
    justify-content:flex-start!important;
    width:100%!important;
  }
}

/* 1915 — mobile ASAP copy: larger matched text; shrink together only on narrow screens */
@media(max-width:800px){
  .order-form .delivery-time-inline .asap-choice > span{
    display:inline-flex!important;
    flex-direction:row!important;
    align-items:center!important;
    gap:4px!important;
    white-space:nowrap!important;
    min-width:0!important;
  }
  .order-form .delivery-time-inline .asap-choice strong,
  .order-form .delivery-time-inline .asap-choice .asap-short-note{
    font-size:14px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
  }
  .order-form .delivery-time-inline .asap-choice strong{font-weight:700!important;}
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-weight:400!important;}
}
@media(max-width:360px){
  .order-form .delivery-time-inline .asap-choice strong,
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:13px!important;}
}
@media(max-width:330px){
  .order-form .delivery-time-inline .asap-choice strong,
  .order-form .delivery-time-inline .asap-choice .asap-short-note{font-size:12px!important;}
}


/* 1916 — mobile search readability + whole wreath choice panels clickable */
.snf-panel-filter-area{cursor:pointer;}
.snf-panel-filter-area:focus-visible{outline:3px solid rgba(28,29,27,.28);outline-offset:3px;}
@media(max-width:720px){
  .snf-home1851-search input{font-size:15px!important;font-weight:600!important;}
}


/* 1917 — mobile result tabs: counts inside tabs; wedding rose emphasis */
@media(max-width:760px){
  .sl-results-head .sl-result-head-counts{display:none!important;}
  .sl-mobile-result-filters{
    border-color:#dedede!important;
    border-radius:4px!important;
    margin-bottom:12px!important;
  }
  .sl-mobile-result-filters button{
    min-width:0!important;
    padding:0 5px!important;
    min-height:46px!important;
    font-size:14px!important;
    line-height:1!important;
    white-space:nowrap!important;
    background:#fff!important;
    color:#3f4a47!important;
    border-right:1px solid #dedede!important;
  }
  .sl-mobile-result-filters button span{font:inherit!important;color:inherit!important;}
  .sl-mobile-result-filters button[data-filter="all"].is-active{
    background:#111!important;
    color:#fff!important;
  }
  .sl-mobile-result-filters button[data-filter="funeral"].is-active{
    background:#f3f3f3!important;
    color:#222!important;
  }
  .sl-mobile-result-filters button[data-filter="wedding"]{
    background:#f7e4e8!important;
    color:#8d2940!important;
    border-color:#e9c9d0!important;
  }
  .sl-mobile-result-filters button[data-filter="wedding"].is-active{
    background:#f1d3da!important;
    color:#791b34!important;
  }
}

/* 1918: 홈 정품/실속 상품 구분을 한 줄에서 선명하게 표시 */
.product-body>.snf-product-kindline{display:flex!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;overflow:hidden!important;letter-spacing:0!important;font-size:11px!important;line-height:1.25!important;color:#575752!important;}
.product-body>.snf-product-kindline b{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;padding:3px 7px!important;border-radius:999px!important;font-size:10px!important;font-weight:900!important;letter-spacing:-.02em!important;}
.product-body>.snf-product-kindline.authentic b{background:#405846!important;color:#fff!important;}
.product-body>.snf-product-kindline.regular b{background:#f1e7df!important;color:#7a4d45!important;}
.product-body>.snf-product-kindline span{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-weight:800!important;}
@media(max-width:640px){.product-body>.snf-product-kindline{gap:4px!important;font-size:10.5px!important}.product-body>.snf-product-kindline b{padding:3px 6px!important;font-size:9.5px!important}}

/* 1919: collection heading grade emphasis */
body.home #snf-collection-title{white-space:nowrap!important;}
body.home #snf-collection-title .snf-title-grade{display:inline-block;font-weight:900!important;line-height:1;padding:.12em .38em;border-radius:.42em;vertical-align:.08em;}
body.home #snf-collection-title .snf-title-grade.authentic{background:#f4c430;color:#111;}
body.home #snf-collection-title .snf-title-grade.regular{background:#111;color:#fff;}
@media(max-width:600px){body.home #snf-collection-title{font-size:clamp(20px,5.7vw,27px)!important;letter-spacing:-.055em!important;}body.home #snf-collection-title .snf-title-grade{font-size:.78em;letter-spacing:-.04em;padding:.16em .34em;}}

/* 1920: 정품 컬렉션 제목 - 검정 정품 배지 하나로 선명하게 */
body.home #snf-collection-title .snf-title-grade.authentic{background:#111!important;color:#fff!important;}


/* 1921: MOBILE ONLY - collection grade badge larger; desktop untouched */
@media(max-width:600px){
  body.home #snf-collection-title .snf-title-grade{
    font-size:.94em!important;
    padding:.22em .46em!important;
    border-radius:.42em!important;
    letter-spacing:-.04em!important;
  }
}


/* 1922 — facility detail collection UI unified with home */
.facility-detail-page .facility-choice-area{cursor:pointer}
.facility-detail-page .facility-choice-area.is-active{box-shadow:0 0 0 2px #222 inset}
.facility-detail-page .facility-collection-filters{display:flex;gap:8px;flex-wrap:nowrap;margin:14px 0 18px}
.facility-detail-page .facility-collection-filter{appearance:none;-webkit-appearance:none;border:1px solid #ddd;background:#fff;color:#555;border-radius:999px;padding:9px 16px;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer}
.facility-detail-page .facility-collection-filter.is-active{background:#222;border-color:#222;color:#fff}
.facility-detail-page .facility-title-grade{display:inline-flex;align-items:center;justify-content:center;background:#111;color:#fff;border-radius:5px;padding:3px 9px;margin-right:4px;font-size:.78em;line-height:1.15;vertical-align:.08em;white-space:nowrap}
@media(max-width:760px){
 .facility-detail-page .facility-collection-filters{gap:6px;margin:12px 0 16px}
 .facility-detail-page .facility-collection-filter{flex:1;min-width:0;padding:9px 5px;font-size:13px}
 .facility-detail-page .facility-title-grade{font-size:.82em;padding:4px 10px}
}


/* 1929: restore original whole-area collection choice + best 100k authentic products */
.snf-best1929{max-width:1180px;margin:22px auto 34px;padding:0 20px;box-sizing:border-box}
.snf-best1929-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}
.snf-best1929-head strong{font-size:22px;font-weight:900;color:#111}
.snf-best1929-head span{font-size:14px;color:#666}
.snf-best1929-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.snf-best1929-card{display:grid;grid-template-columns:150px 1fr;min-height:150px;border:1px solid #ece7e2;border-radius:18px;overflow:hidden;background:#fff;color:inherit;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.045)}
.snf-best1929-image{position:relative;display:block;background:#f7f5f2;min-height:150px}
.snf-best1929-image img{width:100%;height:100%;object-fit:cover;display:block}
.snf-best1929-badge{position:absolute;z-index:2;top:10px;left:10px;background:#111;color:#fff;font-size:13px;font-weight:900;padding:6px 10px;border-radius:999px}
.snf-best1929-body{display:flex;flex-direction:column;justify-content:center;padding:18px}
.snf-best1929-body b{font-size:19px;font-weight:900}
.snf-best1929-body strong{font-size:20px;margin-top:6px}
.snf-best1929-body em{font-style:normal;font-size:13px;font-weight:800;margin-top:12px;color:#555}
@media(max-width:700px){
  /* Mobile: keep the original whole authentic/regular panels clickable, but remove only their decorative pair images. */
  body.home .snf-home1851-pair{display:none!important}
  body.home .snf-home1851-panel{cursor:pointer}
  .snf-best1929{margin:18px auto 28px;padding:0 14px}
  .snf-best1929-head{display:block;margin-bottom:11px}
  .snf-best1929-head strong{display:block;font-size:20px}
  .snf-best1929-head span{display:block;margin-top:4px;font-size:13px}
  .snf-best1929-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .snf-best1929-card{display:block;min-height:0;border-radius:14px}
  .snf-best1929-image{height:132px;min-height:0}
  .snf-best1929-body{padding:11px 10px 13px}
  .snf-best1929-body b{font-size:15px}
  .snf-best1929-body strong{font-size:17px;margin-top:4px}
  .snf-best1929-body em{font-size:12px;margin-top:8px}
}


/* 1932: mobile hero cleanup + full best-product image */
.snf-best1929-head{justify-content:space-between!important;gap:24px!important}
.snf-best1929-head span{margin-left:auto!important;text-align:right!important;max-width:560px!important;padding:8px 12px!important;border-radius:10px!important;background:#f7f5f2!important;color:#666!important}
.snf-best1929-image{display:flex!important;align-items:center!important;justify-content:center!important;background:#faf9f6!important}
.snf-best1929-image img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;padding:5px!important;box-sizing:border-box!important}
@media (max-width:700px){
 body.home #snf-unified-site-hero > img.snf-home1851-wreath{display:none!important}
 body.home #snf-unified-site-hero{min-height:0!important}
 body.home #snf-unified-site-hero .snf-home1851-center{padding-bottom:16px!important}
 .snf-best1929-head{display:block!important}
 .snf-best1929-head span{display:block!important;margin:4px 0 0!important;text-align:left!important;max-width:none!important;padding:0!important;background:transparent!important}
 .snf-best1929-image{height:190px!important}
}


/* 1933: structural home hero + best-card guidance */
.snf-best1929-head{display:block!important;margin-bottom:14px!important}
.snf-best1929-head strong{display:block!important}
.snf-best1929-body small{display:block;margin-top:10px;color:#777;font-size:13px;line-height:1.55;font-weight:500}
@media(max-width:700px){
 body.home #snf-unified-site-hero.snf-home1851-hero{display:flex!important;min-height:0!important;height:auto!important;padding:22px 14px 18px!important;align-items:center!important;justify-content:center!important}
 body.home #snf-unified-site-hero .snf-home1851-center{width:100%!important;max-width:600px!important;padding:0!important;margin:0 auto!important;grid-column:auto!important;grid-row:auto!important}
 .snf-best1929-body small{font-size:11px;line-height:1.45;margin-top:7px}
 .snf-best1929-image{height:190px!important}
}

/* 1934: balanced desktop best cards + mobile black order tab */
@media (min-width:701px){
 .snf-best1929-card{grid-template-columns:160px minmax(0,1fr)!important;align-items:stretch!important}
 .snf-best1929-body{display:grid!important;grid-template-columns:minmax(180px,1fr) auto!important;grid-template-rows:auto auto 1fr!important;column-gap:28px!important;align-content:center!important;padding:22px 24px!important}
 .snf-best1929-body b{grid-column:1;grid-row:1!important}
 .snf-best1929-body strong{grid-column:1;grid-row:2!important}
 .snf-best1929-body small{grid-column:1;grid-row:3!important;align-self:start!important;max-width:280px!important}
 .snf-best1929-body em{grid-column:2;grid-row:1 / span 3!important;align-self:center!important;justify-self:end!important;margin:0!important;background:#111!important;color:#fff!important;padding:13px 18px!important;border-radius:10px!important;white-space:nowrap!important;font-size:14px!important}
}
@media (max-width:700px){
 .snf-best1929-body em{display:block!important;margin-top:10px!important;background:#111!important;color:#fff!important;border-radius:9px!important;padding:11px 8px!important;text-align:center!important;font-size:13px!important;font-weight:900!important}
}


/* 1936 — REAL home hero target: compact desktop + visible lightweight ribbon arcs */
@media (min-width:901px){
  body.home #snf-unified-site-hero.snf-home1851-hero{
    min-height:300px!important;
    height:auto!important;
    padding:24px 24px!important;
  }
  body.home #snf-unified-site-hero.snf-home1851-hero:after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      radial-gradient(ellipse 210px 150px at -18px 78%, transparent 62%, rgba(190,143,126,.22) 63%, rgba(190,143,126,.22) 64%, transparent 65%),
      radial-gradient(ellipse 270px 190px at -28px 80%, transparent 67%, rgba(190,143,126,.13) 68%, rgba(190,143,126,.13) 69%, transparent 70%),
      radial-gradient(ellipse 210px 150px at calc(100% + 18px) 22%, transparent 62%, rgba(216,132,157,.22) 63%, rgba(216,132,157,.22) 64%, transparent 65%),
      radial-gradient(ellipse 270px 190px at calc(100% + 28px) 20%, transparent 67%, rgba(216,132,157,.13) 68%, rgba(216,132,157,.13) 69%, transparent 70%),
      radial-gradient(ellipse at center,rgba(255,255,255,.46),rgba(255,255,255,.14) 56%,transparent 75%)!important;
  }
  body.home #snf-unified-site-hero .snf-home1851-center{
    position:relative!important;
    z-index:4!important;
  }
}


/* 1937 — premium organic ribbon accents; hero dimensions unchanged */
@media (min-width:901px){
  body.home #snf-unified-site-hero.snf-home1851-hero:after{
    background:
      radial-gradient(ellipse 310px 125px at -75px 80%, transparent 61%, rgba(177,133,113,.20) 62%, rgba(177,133,113,.20) 62.7%, transparent 63.7%),
      radial-gradient(ellipse 385px 165px at -95px 87%, transparent 67%, rgba(177,133,113,.11) 68%, rgba(177,133,113,.11) 68.6%, transparent 69.6%),
      radial-gradient(ellipse 290px 115px at calc(100% + 65px) 20%, transparent 61%, rgba(214,119,151,.20) 62%, rgba(214,119,151,.20) 62.7%, transparent 63.7%),
      radial-gradient(ellipse 365px 155px at calc(100% + 90px) 13%, transparent 67%, rgba(214,119,151,.11) 68%, rgba(214,119,151,.11) 68.6%, transparent 69.6%),
      radial-gradient(ellipse 18px 7px at 6.5% 77%, rgba(177,133,113,.13) 0 46%, transparent 50%),
      radial-gradient(ellipse 15px 6px at 8.2% 70%, rgba(177,133,113,.10) 0 46%, transparent 50%),
      radial-gradient(ellipse 18px 7px at 93.5% 23%, rgba(214,119,151,.13) 0 46%, transparent 50%),
      radial-gradient(ellipse 15px 6px at 91.8% 30%, rgba(214,119,151,.10) 0 46%, transparent 50%),
      radial-gradient(ellipse at center,rgba(255,255,255,.48),rgba(255,255,255,.12) 57%,transparent 76%)!important;
  }
}


/* 1938 — inline SVG botanical ribbon artwork; no external image request */
@media (min-width:901px){
  body.home #snf-unified-site-hero.snf-home1851-hero:after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%201500%20300%22%3E%0A%3Cg%20fill=%22none%22%20stroke-linecap=%22round%22%3E%0A%20%3Cpath%20d=%22M-40%20250%20C90%20150%20170%20315%20310%20190%20C380%20128%20390%2075%20350%2032%22%20stroke=%22%23b78c7a%22%20stroke-opacity=%22.24%22%20stroke-width=%222%22/%3E%0A%20%3Cpath%20d=%22M-70%20278%20C85%20178%20185%20345%20335%20208%20C405%20144%20425%2087%20390%2042%22%20stroke=%22%23b78c7a%22%20stroke-opacity=%22.12%22%20stroke-width=%221.5%22/%3E%0A%20%3Cpath%20d=%22M1540%2045%20C1410%20145%201330%20-15%201190%20110%20C1120%20172%201110%20225%201150%20268%22%20stroke=%22%23d77f9e%22%20stroke-opacity=%22.24%22%20stroke-width=%222%22/%3E%0A%20%3Cpath%20d=%22M1570%2017%20C1415%20117%201315%20-45%201165%2092%20C1095%20156%201075%20213%201110%20258%22%20stroke=%22%23d77f9e%22%20stroke-opacity=%22.12%22%20stroke-width=%221.5%22/%3E%0A%3C/g%3E%0A%3Cg%20fill=%22none%22%20stroke=%22%23b78c7a%22%20stroke-opacity=%22.20%22%20stroke-width=%221.4%22%3E%0A%20%3Cpath%20d=%22M142%20220%20C170%20190%20191%20164%20206%20133%22/%3E%0A%20%3Cpath%20d=%22M169%20190%20C150%20177%20139%20159%20140%20141%22/%3E%0A%20%3Cpath%20d=%22M169%20190%20C188%20180%20204%20165%20211%20147%22/%3E%0A%20%3Cpath%20d=%22M194%20155%20C179%20143%20171%20128%20172%20113%22/%3E%0A%20%3Cellipse%20cx=%22139%22%20cy=%22141%22%20rx=%2216%22%20ry=%226%22%20transform=%22rotate(36%20139%20141)%22/%3E%0A%20%3Cellipse%20cx=%22211%22%20cy=%22147%22%20rx=%2216%22%20ry=%226%22%20transform=%22rotate(-38%20211%20147)%22/%3E%0A%20%3Cellipse%20cx=%22172%22%20cy=%22113%22%20rx=%2214%22%20ry=%225%22%20transform=%22rotate(42%20172%20113)%22/%3E%0A%3C/g%3E%0A%3Cg%20fill=%22none%22%20stroke=%22%23d77f9e%22%20stroke-opacity=%22.20%22%20stroke-width=%221.4%22%3E%0A%20%3Cpath%20d=%22M1358%2080%20C1330%20110%201309%20136%201294%20167%22/%3E%0A%20%3Cpath%20d=%22M1331%20110%20C1350%20123%201361%20141%201360%20159%22/%3E%0A%20%3Cpath%20d=%22M1331%20110%20C1312%20120%201296%20135%201289%20153%22/%3E%0A%20%3Cpath%20d=%22M1306%20145%20C1321%20157%201329%20172%201328%20187%22/%3E%0A%20%3Cellipse%20cx=%221361%22%20cy=%22159%22%20rx=%2216%22%20ry=%226%22%20transform=%22rotate(36%201361%20159)%22/%3E%0A%20%3Cellipse%20cx=%221289%22%20cy=%22153%22%20rx=%2216%22%20ry=%226%22%20transform=%22rotate(-38%201289%20153)%22/%3E%0A%20%3Cellipse%20cx=%221328%22%20cy=%22187%22%20rx=%2214%22%20ry=%225%22%20transform=%22rotate(42%201328%20187)%22/%3E%0A%3C/g%3E%0A%3C/svg%3E")!important;
    background-repeat:no-repeat!important;
    background-position:center center!important;
    background-size:100% 100%!important;
  }
}


/* 1939 — restrained luxury ribbon emboss; hero layout untouched */
@media (min-width:901px){
 body.home #snf-unified-site-hero.snf-home1851-hero:after{
   background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%201500%20300%22%3E%0A%3Cdefs%3E%0A%20%3ClinearGradient%20id=%22L%22%20x1=%220%22%20y1=%221%22%20x2=%221%22%20y2=%220%22%3E%3Cstop%20stop-color=%22%23b58b78%22%20stop-opacity=%220%22/%3E%3Cstop%20offset=%22.38%22%20stop-color=%22%23b58b78%22%20stop-opacity=%22.16%22/%3E%3Cstop%20offset=%22.78%22%20stop-color=%22%23b58b78%22%20stop-opacity=%22.08%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22%23b58b78%22%20stop-opacity=%220%22/%3E%3C/linearGradient%3E%0A%20%3ClinearGradient%20id=%22R%22%20x1=%221%22%20y1=%220%22%20x2=%220%22%20y2=%221%22%3E%3Cstop%20stop-color=%22%23d57e9d%22%20stop-opacity=%220%22/%3E%3Cstop%20offset=%22.38%22%20stop-color=%22%23d57e9d%22%20stop-opacity=%22.16%22/%3E%3Cstop%20offset=%22.78%22%20stop-color=%22%23d57e9d%22%20stop-opacity=%22.08%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22%23d57e9d%22%20stop-opacity=%220%22/%3E%3C/linearGradient%3E%0A%3C/defs%3E%0A%3Cg%20fill=%22none%22%20stroke-linecap=%22round%22%3E%0A%20%3Cpath%20d=%22M-80%20262%20C48%20210%20142%20250%20235%20202%20C303%20167%20338%20116%20324%2050%22%20stroke=%22url(%23L)%22%20stroke-width=%221.6%22/%3E%0A%20%3Cpath%20d=%22M-55%20281%20C73%20232%20160%20273%20252%20221%20C316%20185%20350%20139%20347%2084%22%20stroke=%22url(%23L)%22%20stroke-width=%22.8%22/%3E%0A%20%3Cpath%20d=%22M1580%2038%20C1452%2090%201358%2050%201265%2098%20C1197%20133%201162%20184%201176%20250%22%20stroke=%22url(%23R)%22%20stroke-width=%221.6%22/%3E%0A%20%3Cpath%20d=%22M1555%2019%20C1427%2068%201340%2027%201248%2079%20C1184%20115%201150%20161%201153%20216%22%20stroke=%22url(%23R)%22%20stroke-width=%22.8%22/%3E%0A%3C/g%3E%0A%3C/svg%3E")!important;
   background-repeat:no-repeat!important;
   background-position:center!important;
   background-size:100% 100%!important;
 }
}

/* 1940 — final clean hero: remove decorative artwork, keep compact layout/gradient */
@media (min-width:901px){
  body.home #snf-unified-site-hero.snf-home1851-hero:after{
    content:none!important;
    display:none!important;
    background:none!important;
  }
}

/* 1941 — unified clean hero on home + INFO/archive/single pages */
@media (min-width:901px){
  #snf-unified-site-hero.snf-home1851-hero{
    min-height:300px!important;
    height:auto!important;
    padding:24px!important;
  }
  #snf-unified-site-hero.snf-home1851-hero:after{
    content:none!important;
    display:none!important;
    background:none!important;
  }
}

/* 1943 — mobile clean-hero gap fix: remove obsolete wreath reserved height */
@media (max-width:900px){
  body.home #snf-unified-site-hero.snf-home1851-hero,
  body.post-type-archive-snf_info #snf-unified-site-hero.snf-home1851-hero,
  body.single-snf_info #snf-unified-site-hero.snf-home1851-hero{
    height:auto!important;
    min-height:0!important;
    padding-top:26px!important;
    padding-bottom:26px!important;
  }
  #snf-unified-site-hero.snf-home1851-hero .snf-home1851-center{
    margin-bottom:0!important;
    padding-bottom:0!important;
  }
}

/* 1944 — definitive mobile gap fix.
   Old mobile hero was still GRID with a second 136px row reserved for wreaths. */
@media (max-width:900px){
  #snf-unified-site-hero.snf-home1851-hero{
    display:flex!important;
    grid-template-columns:none!important;
    grid-template-rows:none!important;
    grid-auto-rows:auto!important;
    min-height:0!important;
    height:auto!important;
    padding:22px 14px 20px!important;
    align-items:center!important;
    justify-content:center!important;
    row-gap:0!important;
  }
  #snf-unified-site-hero.snf-home1851-hero .snf-home1851-center{
    width:100%!important;
    max-width:600px!important;
    margin:0 auto!important;
    padding:0!important;
    grid-column:auto!important;
    grid-row:auto!important;
  }
}

/* 1960 — PRODUCT LAYOUT CONTRACT
   One width/grid contract for homepage best sellers, INFO archive bottom collection,
   ordinary-post bottom collection, and INFO single related collection.
   This replaces the accumulated 1950–1959 width patches. */
:root{
  --snf-product-canvas:1180px;
  --snf-product-edge:22px;
  --snf-product-gap:20px;
}
.snf-best1929,
.snf-post-products.products-section,
.snf-info-archive-products,
.snf-info-related-products{
  box-sizing:border-box!important;
}
body.single-post .snf-post-products.products-section{
  width:100%!important;
  max-width:var(--snf-product-canvas)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:var(--snf-product-edge)!important;
  padding-right:var(--snf-product-edge)!important;
}
body.post-type-archive-snf_info main.snf-info-archive,
body.tax-snf_info_category main.snf-info-archive{
  width:100%!important;
  max-width:var(--snf-product-canvas)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
body.single-post .snf-post-products .product-grid,
body.post-type-archive-snf_info .snf-info-archive-products .product-grid,
body.tax-snf_info_category .snf-info-archive-products .product-grid,
body.single-snf_info .snf-info-related-products .product-grid{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:var(--snf-product-gap)!important;
  box-sizing:border-box!important;
}

@media (max-width:760px){
  :root{
    --snf-product-edge:13px;
    --snf-product-gap:10px;
  }

  /* All product canvases use the same physical viewport edge on mobile. */
  body.single-post .snf-post-products.products-section,
  body.post-type-archive-snf_info main.snf-info-archive,
  body.tax-snf_info_category main.snf-info-archive{
    width:100%!important;
    max-width:100%!important;
    padding-left:var(--snf-product-edge)!important;
    padding-right:var(--snf-product-edge)!important;
    box-sizing:border-box!important;
  }

  body.single-post .snf-post-products .product-grid,
  body.post-type-archive-snf_info .snf-info-archive-products .product-grid,
  body.tax-snf_info_category .snf-info-archive-products .product-grid,
  body.single-snf_info .snf-info-related-products .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:var(--snf-product-gap)!important;
  }

  /* Best sellers: same 13px viewport edge, not inherited article/archive padding. */
  body.post-type-archive-snf_info .snf-best1929,
  body.tax-snf_info_category .snf-best1929,
  body.single-snf_info .snf-best1929,
  body.single-post .snf-best1929{
    width:calc(100vw - (var(--snf-product-edge) * 2))!important;
    max-width:calc(100vw - (var(--snf-product-edge) * 2))!important;
    margin-left:calc(50% - 50vw + var(--snf-product-edge))!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }
  .snf-best1929-grid{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:var(--snf-product-gap)!important;
  }

  /* Pagination is a finite one-row control; no horizontal scrolling. */
  .snf-info-pagination{
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:4px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    white-space:nowrap!important;
  }
  .snf-info-pagination .page-numbers{
    flex:0 0 auto!important;
    margin:0!important;
    min-width:30px!important;
    padding-left:7px!important;
    padding-right:7px!important;
    box-sizing:border-box!important;
  }
}

/* 1962 — DESKTOP SINGLE PRODUCT WIDTH ONLY
   Scope: ordinary posts + snf_info singles, product areas only.
   Mobile (<=760px) is intentionally untouched. */
@media (min-width:761px){
  body.single-post .snf-bottom-products-unified > .snf-best1929,
  body.single-snf_info .snf-bottom-products-unified > .snf-best1929,
  body.single-snf_info .snf-bottom-products-unified > .snf-info-related-products{
    width:min(1180px, calc(100vw - 44px))!important;
    max-width:1180px!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
    padding-left:22px!important;
    padding-right:22px!important;
    box-sizing:border-box!important;
  }

  body.single-post .snf-post-products.products-section{
    width:min(1180px, calc(100vw - 44px))!important;
    max-width:1180px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:22px!important;
    padding-right:22px!important;
    box-sizing:border-box!important;
  }

  body.single-post .snf-bottom-products-unified > .snf-best1929 .snf-best1929-grid,
  body.single-snf_info .snf-bottom-products-unified > .snf-best1929 .snf-best1929-grid,
  body.single-snf_info .snf-bottom-products-unified > .snf-info-related-products .product-grid,
  body.single-post .snf-post-products.products-section .product-grid{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
}

/* 1967 - facility search value proposition directly above the active hero search */
.snf-facility-search-guide{margin:18px auto 10px;text-align:center;line-height:1.45}
.snf-facility-search-guide strong{display:block;font-size:17px;font-weight:800;letter-spacing:-.035em;color:var(--ink)}
.snf-facility-search-guide span{display:block;margin-top:4px;font-size:12px;color:#686963}
@media(max-width:720px){.snf-facility-search-guide{margin:15px auto 9px;padding:0 2px}.snf-facility-search-guide strong{font-size:15px}.snf-facility-search-guide span{font-size:11px;line-height:1.5}}

/* 1968: unified facility-search message on internal search surfaces. */
.snf-facility-search-guide-inner{margin-top:8px;margin-bottom:10px}
.sl-search-hero .snf-facility-search-guide{margin-top:12px;margin-bottom:12px}

/* 1976: mobile-only homepage hero cleanup. Hide only the brand delivery description. */
@media (max-width:600px){
  body.home .snf-home1851-center > p{
    display:none!important;
  }
}

/* build1977: facility restriction copy spacing */
.facility-restriction-copy{display:flex;flex-direction:column;justify-content:center;gap:10px;min-width:0}
.facility-restriction-copy p,.facility-restriction-copy small{margin:0!important}
.facility-restriction-copy small{grid-column:auto!important;display:block}
@media(max-width:800px){.facility-restriction-copy{gap:8px}}

/* 1980: homepage facility-order headline hierarchy only */
body.home #snf-unified-site-hero .snf-facility-search-guide strong{
  display:block;
  max-width:430px;
  margin:0 auto;
  font-size:0!important;
  line-height:1.18;
  letter-spacing:-.045em;
}
body.home #snf-unified-site-hero .snf-facility-search-guide strong::before,
body.home #snf-unified-site-hero .snf-facility-search-guide strong::after{
  display:block;
}
body.home #snf-unified-site-hero .snf-facility-search-guide strong::before{
  content:"장례식장·웨딩홀 찾고,";
  font-size:16px;
  font-weight:650;
}
body.home #snf-unified-site-hero .snf-facility-search-guide strong::after{
  content:"화환 주문까지 한 번에";
  margin-top:3px;
  font-size:22px;
  font-weight:900;
}
@media(max-width:720px){
  body.home #snf-unified-site-hero .snf-facility-search-guide strong::before{font-size:14px}
  body.home #snf-unified-site-hero .snf-facility-search-guide strong::after{font-size:19px;white-space:nowrap}
}
@media(max-width:360px){
  body.home #snf-unified-site-hero .snf-facility-search-guide strong::after{font-size:18px}
}

/* 1985: recent-search popover — deliberately appended to body, never a child of search forms. */
.snf-recent-search-popover{
  position:absolute;z-index:10000;background:#fff;color:#181816;border:1px solid #dedede;
  border-radius:4px;box-shadow:0 8px 24px rgba(0,0,0,.12);overflow:hidden;text-align:left;
  font-family:Arial,'Noto Sans KR',sans-serif;
}
.snf-recent-search-popover[hidden]{display:none!important}
.snf-recent-search-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px 8px;border-bottom:1px solid #f1f1f1}
.snf-recent-search-head strong{font-size:15px;font-weight:700;line-height:1.4}
.snf-recent-search-popover button{appearance:none!important;-webkit-appearance:none!important;border:0!important;border-radius:0!important;background:transparent!important;color:#181816!important;box-shadow:none!important;margin:0!important;height:auto!important;min-height:0!important;width:auto!important;letter-spacing:normal!important;text-transform:none!important;cursor:pointer;font-family:inherit}
.snf-recent-search-popover .snf-recent-clear{padding:2px 0!important;font-size:13px!important;color:#777!important;line-height:1.4!important}
.snf-recent-search-row{display:flex;align-items:center;min-height:40px;padding:0 8px 0 14px}
.snf-recent-search-row:hover{background:#f7f7f7}
.snf-recent-search-popover .snf-recent-search-term{flex:1!important;display:block!important;padding:10px 8px 10px 0!important;text-align:left!important;font-size:15px!important;line-height:1.45!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.snf-recent-search-popover .snf-recent-search-delete{flex:0 0 32px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:6px!important;font-size:20px!important;line-height:1!important;color:#999!important}
.snf-recent-search-popover .snf-recent-search-delete:hover{color:#222!important}
@media(max-width:720px){
 .snf-recent-search-head{padding:11px 12px 7px}.snf-recent-search-row{padding-left:12px;min-height:42px}
 .snf-recent-search-popover .snf-recent-search-term{font-size:15px!important}
}

/* 1998: order delivery-place smart lookup */
.order-place-search-results{border:1px solid var(--line);background:#fff;margin:-1px 0 6px;max-height:360px;overflow:auto;position:relative;z-index:12}
.order-place-search-result{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border-top:1px solid #eee}
.order-place-search-result:first-child{border-top:0}
.order-place-search-result button{border:0;background:#fff;color:var(--ink);cursor:pointer}
.order-place-result-main{text-align:left;padding:11px 12px;min-width:0}
.order-place-result-main strong,.order-place-result-main small{display:block}
.order-place-result-main strong{font-size:13px}.order-place-result-main small{font-size:10px;color:var(--muted);margin-top:3px}
.order-place-result-pick{margin:8px;padding:0 15px;border:1px solid var(--ink)!important;font-size:12px;font-weight:700}
.order-place-search-result button:hover{background:var(--paper)}
.order-place-search-status{min-height:18px;margin:2px 0 10px;font-size:10px;color:var(--muted)}


/* v2010 — 지역 장례식장·웨딩홀 상·하단을 시설 페이지 디자인과 통일 */
.snf-region-directory-page{padding-top:34px}
.snf-region-hero{margin-bottom:48px}
.snf-region-hero-image{min-height:300px;border-radius:17px;overflow:hidden;background:#eee8dc}
.snf-region-hero-image img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.snf-region-list-title{margin-bottom:22px}
.snf-region-list-title h2{margin:5px 0 8px;font-size:clamp(27px,3vw,38px);letter-spacing:-.035em}
.snf-region-bottom{align-items:stretch}
.snf-region-bottom-image{padding:0!important;border:0!important;overflow:hidden;min-height:220px}
.snf-region-bottom-image img{width:100%;height:100%;min-height:220px;object-fit:cover;display:block}
.snf-region-bottom-cta{margin-bottom:12px}
@media(max-width:800px){
 .snf-region-directory-page{padding-top:22px}
 .snf-region-hero{margin-bottom:36px}
 .snf-region-hero-image,.snf-region-hero-image img{min-height:220px}
 .snf-region-bottom-image{padding:0!important;border-top:0!important;min-height:190px}
 .snf-region-bottom-image img{min-height:190px}
}


/* v2012 — 지역 페이지를 시설 상세 상·하단 디자인과 동일한 정보형 카드로 통일 */
.snf-region-hero-image,.snf-region-bottom-image{display:none!important}
.snf-region-quick-card{min-height:300px}
.snf-region-quick-card span{line-height:1.8}
.snf-region-guide-card{display:flex;flex-direction:column;justify-content:center}
@media(max-width:800px){.snf-region-quick-card{min-height:0}}

/* v2013 — 지역/시설 반입정책 연동 상품 영역 */
.snf-region-products-section{margin-top:52px}


/* 2020 — region product flow: same compact spacing as facility detail */
.snf-region-directory-page .snf-region-products-section{
  max-width:none;
  margin-top:32px;
  padding:0;
}
@media(max-width:520px){
  .snf-region-directory-page .snf-region-products-section{
    margin-top:26px;
    padding:0;
  }
}


/* 2031 — ordinary post wide canvas + unified bottom product width.
   General posts use the same 1180px desktop canvas as the main product area. */
@media (min-width:761px){
  body.single-post main#primary.snf-info-single-wrap{
    width:min(1180px, calc(100vw - 44px))!important;
    max-width:1180px!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
  body.single-post main#primary.snf-info-single-wrap .snf-info-single-content{
    width:100%!important;
    max-width:none!important;
  }
  body.single-post .snf-bottom-products-unified > .snf-best1929,
  body.single-post .snf-bottom-products-unified > .snf-info-related-products{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }
  body.single-post .snf-bottom-products-unified > .snf-best1929 .snf-best1929-grid,
  body.single-post .snf-bottom-products-unified > .snf-info-related-products .product-grid{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }
}



/* 2033: article stays 920px; the plugin's complete bottom-products wrapper alone breaks out to main width. */
@media (min-width:761px){
  body.single-post main#primary.snf-info-single-wrap{
    width:auto!important;
    max-width:920px!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
  body.single-post .snf-info-single-content > .snf-bottom-products-unified{
    width:min(1180px, calc(100vw - 44px))!important;
    max-width:1180px!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
    box-sizing:border-box!important;
  }
  body.single-post .snf-bottom-products-unified > .snf-best1929,
  body.single-post .snf-bottom-products-unified > .snf-info-related-products{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
}


/* 2048: policy warning -> edit selected products */
.order-policy-kind-title .order-policy-edit-products{
  margin-left:auto;
  flex:0 0 auto;
  border:1px solid currentColor;
  border-radius:8px;
  padding:8px 13px;
  background:#fff;
  font:inherit;
  font-weight:700;
  line-height:1.2;
  cursor:pointer;
}
.order-policy-kind-title .order-policy-edit-products:hover,
.order-policy-kind-title .order-policy-edit-products:focus-visible{
  text-decoration:underline;
}
@media (max-width:640px){
  .order-policy-kind-title .order-policy-edit-products{
    width:100%;
    margin:8px 0 0;
  }
}


/* 2051: separate regional policy from facility-specific policy */
.order-region-policy-note{
  margin-top:8px;
  margin-bottom:12px;
}
#order-place-search-status:empty{
  display:none!important;
}
#order-place-search-status{
  margin-top:4px;
  margin-bottom:0;
}
#order-policy-kind-note{
  margin-top:8px;
}

/* 2054: compact mismatch warning */
.order-policy-compact-warning{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.order-policy-compact-warning .order-policy-edit-products{flex:0 0 auto;border:1px solid currentColor;border-radius:8px;padding:8px 13px;background:#fff;font:inherit;font-weight:700;line-height:1.2;cursor:pointer}
@media(max-width:640px){.order-policy-compact-warning{gap:8px}.order-policy-compact-warning .order-policy-edit-products{width:100%}}

/* 2056: show allowed product types inside the compact warning */
.order-policy-compact-warning .order-policy-allowed-line{
  flex:1 1 100%;
  line-height:1.5;
}

/* 2060 facility SEO internal-link section */
.facility-related-local{margin:34px 0;padding:26px;border:1px solid #e6e6e6;border-radius:18px;background:#fff}
.facility-related-local-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.facility-related-local-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border:1px solid #ececec;border-radius:12px;text-decoration:none;color:inherit}
.facility-related-local-links strong{font-size:15px;line-height:1.45}.facility-related-local-links span{font-size:12px;color:#777;white-space:nowrap}
.facility-related-region-link{display:inline-block;margin-top:16px;font-weight:700;text-decoration:none}
@media(max-width:680px){.facility-related-local{margin:26px 0;padding:20px 16px}.facility-related-local-links{grid-template-columns:1fr}.facility-related-local-links a{align-items:flex-start;flex-direction:column;gap:4px}.facility-related-local-links span{white-space:normal}}

/* 20.64 policy CTA product filter */
.order-product-card.policy-product-hidden{display:none!important;}


/* =========================================================
   v20.65 SEARCH FIRST HERO
   Stable 20.64 functionality preserved; visual hero only.
   ========================================================= */
#snf-unified-site-hero .snf-search-first-copy{
  text-align:center;
  margin:0 auto 18px;
}
#snf-unified-site-hero .snf-search-first-copy h1{
  margin:0!important;
  font-size:clamp(30px,3.4vw,46px)!important;
  line-height:1.18!important;
  letter-spacing:-.055em!important;
  font-weight:650!important;
  color:#171917!important;
}
#snf-unified-site-hero .snf-search-first-copy h1::before{content:none!important;display:none!important}
#snf-unified-site-hero .snf-search-first-copy h1 strong{
  color:#284b38;
  font-weight:800;
}
#snf-unified-site-hero .snf-search-first-copy p{
  margin:14px auto 0!important;
  max-width:620px!important;
  font-size:14px!important;
  line-height:1.65!important;
  color:#686963!important;
  word-break:keep-all;
}
#snf-unified-site-hero .snf-search-first-copy p strong{
  color:#343733;
  font-weight:750;
}
#snf-unified-site-hero .snf-home1851-search{
  max-width:620px!important;
  height:54px!important;
  border-radius:8px!important;
  border:1px solid #d8d8d4!important;
  box-shadow:0 8px 24px rgba(0,0,0,.06)!important;
}
#snf-unified-site-hero .snf-home1851-search input{
  padding:0 18px!important;
  font-size:14px!important;
  font-weight:500!important;
}
#snf-unified-site-hero .snf-home1851-search button{
  width:84px!important;
  font-size:14px!important;
}
#snf-unified-site-hero .snf-search-first-examples{
  margin:10px auto 0;
  font-size:11.5px;
  line-height:1.5;
  color:#85847f;
  text-align:center;
  word-break:keep-all;
}
#snf-unified-site-hero .snf-search-first-examples span{
  margin-right:5px;
  color:#5d625d;
  font-weight:700;
}
#snf-unified-site-hero .snf-search-mobile-break{display:none}

body.home #snf-unified-site-hero.snf-home1851-hero{
  padding-top:32px!important;
  padding-bottom:30px!important;
}
body.home #snf-unified-site-hero .snf-home1851-center{
  max-width:720px!important;
}

@media(max-width:720px){
  body.home #snf-unified-site-hero.snf-home1851-hero{
    padding:24px 14px 22px!important;
  }
  #snf-unified-site-hero .snf-search-first-copy{
    margin-bottom:15px;
  }
  #snf-unified-site-hero .snf-search-first-copy h1{
    font-size:clamp(25px,7.2vw,31px)!important;
    line-height:1.2!important;
  }
  #snf-unified-site-hero .snf-search-first-copy p{
    margin-top:11px!important;
    max-width:330px!important;
    font-size:12px!important;
    line-height:1.55!important;
  }
  #snf-unified-site-hero .snf-search-mobile-break{display:block}
  #snf-unified-site-hero .snf-home1851-search{
    max-width:100%!important;
    height:48px!important;
  }
  #snf-unified-site-hero .snf-home1851-search input{
    padding:0 12px!important;
    font-size:12px!important;
  }
  #snf-unified-site-hero .snf-home1851-search button{
    width:64px!important;
    font-size:12px!important;
  }
  #snf-unified-site-hero .snf-search-first-examples{
    max-width:320px;
    margin-top:9px;
    font-size:10px;
  }
}
