/* The first direct-shop launch is isolated until delivery and payments are ready. */
.shop-preview [hidden]{display:none!important}
.voucher-banner{display:flex;align-items:center;justify-content:center;gap:24px;background:#164d38;color:#fff;padding:16px 6vw;font-size:15px;line-height:1.5}.voucher-banner strong{margin-right:8px}.voucher-banner small{display:block;font-size:14px;opacity:.85}.voucher-banner button{flex-shrink:0;min-height:44px;padding:10px 18px;border:1px solid #dcedb4;border-radius:3px;background:#dcedb4;color:#123f31;font:600 15px Arial,sans-serif;cursor:pointer}.voucher-entry{border-top:1px solid #bdcbb5;margin-top:18px;padding-top:14px}.voucher-entry summary{cursor:pointer;min-height:44px;align-content:center;font-weight:600}.voucher-entry label{display:block;margin:10px 0 8px;font-size:14px}.voucher-controls{display:flex;gap:8px}.voucher-controls input{min-width:0;flex:1;width:100%;min-height:48px;padding:10px 12px;background:#fffef9;color:#123f31;border:1px solid #a8b7a8;border-radius:3px;font-size:16px;text-transform:uppercase}.voucher-controls button{min-height:48px;padding:10px 15px;background:#164d38;color:white;border:0;border-radius:3px;font:600 15px Arial,sans-serif;cursor:pointer}.voucher-terms,#voucher-message{font-size:14px;line-height:1.5}.voucher-terms{color:#526558}#voucher-message:empty{display:none}.guest-checkout-note{border-left:3px solid #164d38;padding:6px 0 6px 18px;margin-bottom:32px}.guest-checkout-note p{font-size:14px;color:#526558;margin:6px 0 0}.checkout-field select{display:block;width:100%;max-width:100%;min-height:50px;padding:12px 14px;border:1px solid #a8b7a8;border-radius:3px;background:#fffef9;color:#123f31;font:16px Arial,sans-serif}.checkout-field{min-width:0}.checkout-field select:disabled{opacity:.65}.field-help{font-size:14px;line-height:1.5;color:#526558;margin:8px 0 0}.address-manual-toggle{font-size:14px;margin-top:12px}.shop-preview :is(input,select,button,summary):focus-visible{outline:3px solid #628554;outline-offset:3px}
@media(max-width:700px){.voucher-banner{align-items:flex-start;gap:14px;padding:16px 6vw;flex-direction:column}.voucher-banner strong{display:block}.voucher-banner button{min-height:44px}.voucher-controls{gap:8px}}
.shop-preview{--line:#cbd5c7;--muted:#526558}.shop-preview .eyebrow{font-size:14px}.preview-notice{background:#dcedb4;padding:12px 6vw;text-align:center;font-size:14px}.preview-notice>span{font-weight:700;letter-spacing:.1em;margin-right:14px}.shop-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 6vw;border-bottom:1px solid var(--line);margin:0;font-size:16px}.shop-nav-title{font:26px Georgia,serif}.shop-nav>div{display:flex;gap:24px;align-items:center}.shop-nav a{display:inline-flex;align-items:center;min-height:44px}.shop-nav a:hover{text-decoration:underline;text-underline-offset:5px}[data-bag-count]{display:inline-flex;align-items:center;justify-content:center;min-width:27px;height:27px;margin-left:8px;padding:0 6px;border-radius:50%;background:#164d38;color:white;font-size:14px}.shop-intro{display:grid;grid-template-columns:1.1fr 1fr;background:#e6edde}.shop-intro>div{padding:52px 5vw 52px 6vw}.shop-intro h1{font:500 clamp(45px,4.8vw,76px)/1.08 Georgia,serif;letter-spacing:-.04em;margin:25px 0}.shop-intro h1 em{font-family:inherit}.shop-intro p:not(.eyebrow){max-width:460px;color:var(--muted)}.shop-intro>img{width:100%;height:100%;max-height:580px;object-fit:cover}.shop-details{display:flex;justify-content:space-between;gap:24px;padding:22px 6vw;border-bottom:1px solid var(--line);font-size:14px}.shop-preview .card-copy>span,.shop-preview .card-copy p{font-size:14px}.card-price{font-size:18px}.price-size{font-size:14px;color:var(--muted)}.shop-preview .card-copy h3{margin:8px 0;font-size:25px}.detail-price{font-size:32px;font-weight:600;line-height:1.2;margin:26px 0 10px}.price-detail,.preview-add-note{font-size:14px;color:var(--muted);max-width:460px}.shop-preview .detail-copy .field-label{font-size:14px;margin-top:22px}.quantity-input{width:92px;border:1px solid #a8b7a8;border-radius:3px;background:#fffef9;color:#123f31;padding:12px 14px;min-height:48px;font-size:16px}.shop-preview button:disabled{opacity:.55;cursor:default}.text-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px;border:0;background:none;color:inherit;font:inherit;padding:6px 0}.shop-live-link{margin:0;padding:20px 6vw 50px;font-size:14px;color:var(--muted)}.shop-live-link a{text-decoration:underline;text-underline-offset:4px}.bag-status:not(:empty){position:fixed;z-index:20;bottom:80px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:14px 20px;border:1px solid #a8bd9f;border-radius:6px;background:#123f31;color:#fff;box-shadow:0 4px 25px #123f3133;font-size:14px;pointer-events:none}.shop-page{padding:48px 6vw 64px;min-height:60vh}.shop-page h1{font:500 clamp(44px,5vw,68px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:20px 0 44px}.bag-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:5vw;align-items:start}.bag-summary{padding:28px;background:#eaf0e3;border-radius:4px;position:sticky;top:24px}.bag-summary h2{font:30px Georgia,serif;margin:0 0 22px}.summary-item{display:flex;justify-content:space-between;gap:18px;font-size:14px;padding:10px 0}.summary-item strong{white-space:nowrap;font-weight:500}.bag-summary dl{border-top:1px solid #bdcbb5;border-bottom:1px solid #bdcbb5;margin:18px 0;padding:14px 0}.bag-summary dl>div{display:flex;justify-content:space-between;gap:16px;margin:10px 0}.bag-summary dd{margin:0;text-align:right}.bag-summary dl>div:first-child{font-weight:700;font-size:18px}.summary-note{font-size:14px;color:var(--muted)}.bag-summary .shop-button{margin-top:22px}.empty-bag{padding:40px 20px 55px;text-align:center;background:#edf1e7}.empty-bag h2{font-size:42px;margin:20px 0}.empty-bag p:not(.eyebrow){color:var(--muted)}.bag-item{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:22px;padding:25px 0;border-top:1px solid var(--line)}.bag-item:last-child{border-bottom:1px solid var(--line)}.bag-item img{width:120px;height:120px;object-fit:contain}.bag-item h2{font:27px/1.15 Georgia,serif;margin:4px 0 10px;letter-spacing:-.02em}.bag-item-copy>p{font-size:14px;color:var(--muted);margin:8px 0 15px}.bag-controls{display:flex;align-items:center;flex-wrap:wrap;gap:0}.bag-controls button:not(.remove-item){width:44px;height:44px;background:transparent;color:inherit;border:1px solid #a8b7a8;font-size:20px}.bag-controls input{width:50px;height:44px;text-align:center;color:inherit;border:solid #a8b7a8;border-width:1px 0;background:#fffef9;border-radius:0;font-size:16px;appearance:textfield;-moz-appearance:textfield}.bag-controls input::-webkit-inner-spin-button{appearance:none}.remove-item{min-height:44px;margin-left:12px;border:0;background:none;font-size:14px;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}.bag-line-total{padding-top:6px;white-space:nowrap;font-size:18px}.checkout-section{margin:0 0 30px;padding:0 0 30px;border:0;border-bottom:1px solid var(--line);min-width:0}.checkout-section h2{font:32px/1.15 Georgia,serif;margin:16px 0}.checkout-hint{font-size:14px;color:var(--muted)}.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:26px}.checkout-field label{display:block;font-weight:600;font-size:14px;margin-bottom:8px}.checkout-field input{display:block;width:100%;min-height:50px;padding:12px 14px;border:1px solid #a8b7a8;border-radius:3px;background:#fffef9;color:#123f31;font:16px Arial,sans-serif}.full-field{grid-column:1/-1}.checkout-country{font-size:14px;color:var(--muted);margin-top:20px}.shipping-pending{padding:18px 20px;background:#edf1e7;font-size:14px;margin-top:20px}.shipping-pending p{margin:6px 0 0}.payment-options legend{padding:0}.payment-options label{display:flex;align-items:center;gap:14px;padding:18px 16px;border:1px solid #a8b7a8;border-radius:3px;margin-top:12px;cursor:pointer}.payment-options label:has(input:checked){border:2px solid #164d38;padding:17px 15px;background:#edf1e7}.payment-options input{width:20px;height:20px;accent-color:#164d38;margin:0;flex-shrink:0}.payment-options strong{font-weight:600}.payment-options small{display:block;font-size:14px;color:var(--muted);margin-top:4px}.pending-tag{font-size:14px;color:var(--muted);margin-left:auto}.test-order-review{padding:28px;background:#edf1e7;border:1px solid var(--line)}.test-order-review h2{font-size:40px;margin:20px 0}.test-order-review .text-link{display:block;margin-top:20px}.shop-preview .catalog-section{scroll-margin-top:20px}
@media(max-width:1000px){.bag-layout{grid-template-columns:minmax(0,1fr) 320px;gap:30px}.bag-item{grid-template-columns:85px minmax(0,1fr);gap:16px}.bag-item img{width:85px;height:85px}.bag-line-total{grid-column:2;padding:0}.bag-summary{padding:22px}.shop-intro>div{padding-top:38px;padding-bottom:38px}.shop-details{flex-wrap:wrap}}
@media(max-width:700px){.preview-notice{font-size:14px;padding:12px 5vw}.preview-notice>span{display:block;margin:0 0 3px}.shop-nav{padding:8px 5vw}.shop-nav-title{font-size:22px}.shop-nav>div{gap:14px}.shop-intro{grid-template-columns:1fr}.shop-intro>div{padding:32px 6vw}.shop-intro h1{font-size:48px;max-width:350px;margin-top:18px}.shop-intro>img{height:200px}.shop-details{display:grid;gap:8px;padding:20px 6vw}.shop-preview .card-copy h3{font-size:23px}.shop-preview .card-copy p{font-size:14px}.shop-page{padding:32px 6vw 40px}.shop-page h1{font-size:46px;margin-bottom:30px}.bag-layout{grid-template-columns:1fr;gap:30px}.bag-summary{position:static}.bag-item{grid-template-columns:85px minmax(0,1fr);gap:16px}.bag-item h2{font-size:25px}.bag-item img{width:85px;height:85px}.bag-line-total{grid-column:2}.checkout-fields{grid-template-columns:1fr;gap:18px}.checkout-section h2{font-size:30px}.payment-options label{flex-wrap:wrap}.payment-options label>span:first-of-type{flex:1}.pending-tag{margin-left:34px}.test-order-review{padding:22px}.test-order-review h2{font-size:34px}.shop-preview .detail-copy h1{font-size:44px}.bag-status:not(:empty){bottom:76px;font-size:14px}.shop-live-link{padding-bottom:90px}}
@media(max-width:380px){.shop-nav-title{font-size:21px}.shop-nav>div{gap:10px;font-size:14px}.shop-preview .card-copy h3{font-size:21px}.bag-item{grid-template-columns:64px minmax(0,1fr);gap:12px}.bag-item img{width:64px;height:64px}.bag-controls .remove-item{margin-left:0;margin-right:25px}.shop-intro h1{font-size:44px}}
