/* A quieter, more tactile shop surface. */
.shop-page{--shop-border:#04231e18}.shop-page main{max-width:1500px}.shop-page .site-header{min-height:110px}.shop-page .shop-steps{padding:5px 0 24px;gap:32px;border-color:var(--shop-border)}.shop-steps a{text-decoration:none;font-size:.8rem;font-weight:600;letter-spacing:.02em;opacity:.7}.shop-steps a:hover,.shop-steps a[aria-current=page]{opacity:1}.shop-steps [data-basket-count]{font-size:.7rem;min-width:21px;min-height:21px;background:transparent;border:1px solid currentColor;color:inherit}.shop-page .shop-hero{padding:65px 0 55px;max-width:900px}.shop-page .shop-hero h1{font-size:clamp(4rem,7.5vw,7rem);letter-spacing:-.075em;margin:15px 0 25px}.shop-page .shop-hero .page-intro{font-size:1.15rem;max-width:450px}.shop-page .shop-catalog-grid{gap:65px 30px}.shop-page .shop-catalog-card:nth-child(3n+2){margin-top:45px}.shop-page .shop-catalog-image{border-radius:22px;border:1px solid #04231e08;box-shadow:0 18px 45px #04231e06}.shop-page .shop-catalog-image img{height:390px;padding:25px 20px 45px;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.shop-page .shop-catalog-image span{font-size:.58rem;letter-spacing:.12em;color:#657269}.shop-page .shop-catalog-title h2{font-size:1.2rem;letter-spacing:-.035em;font-weight:650}.shop-page .shop-catalog-title strong{font-size:1.05rem;font-weight:600}.shop-page .shop-catalog-card p{font-size:.8rem;margin:12px 0}.shop-page .shop-catalog-card .text-cta{display:inline-block;font-size:.78rem;opacity:.8}.shop-page .shop-catalog-card>a:hover .text-cta{opacity:1;translate:3px 0}.shop-page .shop-art-note{margin:20px 0 75px;font-size:.75rem;max-width:650px;opacity:.65}
.shop-page .shop-breadcrumb{font-size:.72rem;opacity:.65;margin:25px 0}.shop-page .shop-product-detail{grid-template-columns:1.18fr 1fr;gap:8%;margin:35px 0 90px}.shop-page .shop-product-detail .shop-product-art{border-radius:25px;background:#fff;border:1px solid #04231e08;box-shadow:0 22px 65px #04231e07}.shop-page .shop-product-detail .shop-product-art img{height:660px;padding:25px 20px 55px}.shop-page .shop-product-tag{font-size:.57rem;letter-spacing:.13em;bottom:24px;color:#66736c}.shop-page .shop-product-options{padding:12px 0}.shop-product-options .eyebrow{font-size:.62rem;letter-spacing:.2em;opacity:.6}.shop-page .shop-product-options h1{font-size:clamp(2.7rem,4vw,4.5rem);font-weight:650;line-height:1.04;letter-spacing:-.065em;max-width:530px;margin:20px 0 28px}.shop-page .product-detail-price{font-size:1.6rem;font-weight:500;letter-spacing:-.04em;margin:0 0 28px}.shop-product-options>p:not(.eyebrow):not(.product-detail-price){font-size:.95rem;line-height:1.8}.shop-page .shop-option-label,.shop-product-options form>label{font-size:.75rem;letter-spacing:.025em;margin:25px 0 12px}.shop-page .shop-colour-links{gap:12px}.shop-page .shop-colour-link{position:relative;gap:9px;padding:11px 16px;min-height:44px;font-size:.75rem;border-color:#83928650;border-radius:13px;transition:background .2s,border-color .2s,transform .2s}.shop-colour-link:before{content:'';width:13px;height:13px;border-radius:50%;background:var(--swatch,#222b28);border:1px solid #04231e20}.shop-colour-link[href$=stone]{--swatch:#d6d0c3}.shop-colour-link[href$=sage]{--swatch:#91a78e}.shop-colour-link[href$=black-olive]{--swatch:linear-gradient(135deg,#222b28 50%,#69734e 50%)}.shop-page .shop-colour-link[aria-current=page]{background:var(--surface);color:inherit;border:1.5px solid currentColor;box-shadow:0 3px 9px #04231e07}.shop-colour-link:hover{transform:translateY(-2px)}.shop-page .shop-view-controls{gap:9px;padding-top:16px}.shop-page .shop-view-controls button{font-size:.72rem;padding:9px 23px;border-radius:12px;min-height:40px;background:transparent;border-color:#83928640}.shop-page .shop-view-controls button[aria-pressed=true]{background:var(--surface);color:inherit;border-color:currentColor}.shop-page .shop-product-options .response-button{min-height:60px;border-radius:16px!important;font-weight:600;font-size:.92rem;background:#04231e;color:#fffdf8;box-shadow:0 7px 18px #04231e10;margin:28px 0 20px}.shop-page .shop-product-options .response-button:hover{background:#265b43;transform:translateY(-2px)}.shop-page .shop-product-options>a.text-cta{font-size:.77rem;font-weight:500}.shop-page .shop-product-pending{font-size:.74rem!important;opacity:.65;max-width:360px;border-top:1px solid var(--shop-border);padding-top:20px}.shop-page #product-details{width:100%;padding:50px 5%;margin-top:20px}.shop-page #product-details h2{font-size:2.2rem}.shop-page #product-details .editorial-copy{max-width:800px}.shop-page #product-details .editorial-copy p{font-size:.95rem}
/* Custom listbox enhances the original native select; the original handles form values/validation. */
.shop-select{position:relative;margin:0 0 15px;z-index:5}.shop-select.is-open{z-index:30}.shop-native-select{position:absolute!important;left:0!important;top:0!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;opacity:0!important;pointer-events:none!important}.shop-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:60px;padding:18px 20px;border:1px solid #83928660;border-radius:16px;background:var(--surface,#fffdf8);color:inherit;font:500 .9rem/1.4 -apple-system,BlinkMacSystemFont,Arial,sans-serif;text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s}.shop-select-trigger.is-placeholder{color:#6d7d72}.shop-select-trigger[aria-expanded=true],.shop-select-trigger:focus-visible{border-color:var(--green);box-shadow:0 0 0 4px #5ea07518;outline:none}.shop-select-trigger[aria-invalid=true]{border-color:#b54a31}.shop-select-chevron{width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s;margin-right:4px;translate:0 -2px}.shop-select-trigger[aria-expanded=true] .shop-select-chevron{transform:rotate(225deg);translate:0 2px}.shop-select-list[hidden],.shop-select-error[hidden]{display:none!important}.shop-select-list{position:absolute;left:0;right:0;top:calc(100% + 8px);padding:7px;background:var(--surface,#fffdf8);border:1px solid #83928640;border-radius:17px;max-height:min(290px,42vh);overflow:auto;box-shadow:0 20px 55px #04231e25;animation:shop-list-in .16s ease-out}.shop-select.opens-up .shop-select-list{top:auto;bottom:calc(100% + 8px)}.shop-select-option{position:relative;padding:12px 16px;border-radius:10px;font-size:.88rem;font-weight:500;cursor:pointer;line-height:1.5}.shop-select-option.is-active{background:#5ea07518}.shop-select-option[aria-selected=true]{background:#5ea07525}.shop-select-option[aria-selected=true]:after{content:'✓';position:absolute;right:17px;color:#356549}.shop-select-error{font-size:.8rem!important;color:#b54a31;margin:8px 0!important}.shop-quantity-stepper{display:inline-flex;align-items:center;border:1px solid #83928660;border-radius:15px;overflow:hidden;background:var(--surface);min-height:53px}.shop-quantity-stepper button{width:45px;min-height:53px;border:0;background:transparent;color:inherit;font-size:1.1rem;cursor:pointer}.shop-quantity-stepper button:hover{background:#5ea07515}.shop-quantity-stepper button:disabled{opacity:.3;cursor:default}.shop-page .shop-quantity-stepper input[type=number]{width:48px;max-width:48px;text-align:center;border:0;background:transparent;border-radius:0;padding:10px 2px;appearance:textfield;-moz-appearance:textfield}.shop-quantity-stepper input::-webkit-inner-spin-button,.shop-quantity-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.shop-page .shop-basket-card{border-radius:22px;border:1px solid var(--shop-border);box-shadow:0 18px 55px #04231e06;padding:35px}.shop-page .shop-basket-layout .shop-basket-card h2{font-size:1.55rem}.shop-page .shop-basket-card .response-button,.shop-page .shop-basket-card button[type=submit]{border-radius:14px!important;min-height:56px;background:#04231e;color:#fffdf8;font-size:.88rem}.shop-page .shop-basket-line{padding:25px 0}.shop-page .shop-basket-line>img{width:100px;height:120px;border-radius:15px}.shop-page .shop-basket-line>div>a{font-size:.95rem}.shop-page .shop-line-controls input{background:var(--surface);color:inherit;font-size:.85rem;border-color:#83928650;min-height:42px}.shop-page .shop-basket-card>a.text-cta{font-size:.8rem}.shop-page .shop-subtotal{font-size:1.15rem;border-top:1px solid var(--shop-border);padding-top:20px}.shop-page .shop-subtotal strong{font-weight:600}
html[data-theme=dark] .shop-page{--shop-border:#d3dfd420}html[data-theme=dark] .shop-page .shop-product-options .response-button,html[data-theme=dark] .shop-page .shop-basket-card .response-button,html[data-theme=dark] .shop-page .shop-basket-card button[type=submit]{background:#d8e4d2;color:#04231e}html[data-theme=dark] .shop-select-trigger.is-placeholder{color:#c1d0c5}html[data-theme=dark] .shop-select-option[aria-selected=true]:after{color:var(--yellow)}
@keyframes shop-list-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:1000px){.shop-page .shop-product-detail{gap:5%;grid-template-columns:1fr 1fr}.shop-page .shop-product-detail .shop-product-art img{height:560px}.shop-page .shop-catalog-image img{height:350px}}@media(max-width:700px){.shop-page .shop-hero{padding:40px 0}.shop-page .shop-hero h1{font-size:4rem}.shop-page .shop-catalog-grid{gap:38px}.shop-page .shop-catalog-card:nth-child(3n+2){margin-top:0}.shop-page .shop-catalog-image img{height:400px;padding:25px 20px 45px}.shop-page .shop-product-detail{grid-template-columns:1fr;gap:24px;margin:20px 0 50px}.shop-page .shop-product-detail .shop-product-art img{height:430px;padding:20px 15px 45px}.shop-page .shop-product-options{padding:10px 0}.shop-page .shop-product-options h1{font-size:2.7rem;margin:20px 0}.shop-page .shop-product-options .response-button{position:relative;min-height:60px}.shop-page .shop-steps{gap:25px;padding-bottom:20px}.shop-page .shop-breadcrumb{margin:20px 0;font-size:.7rem}.shop-page .shop-basket-card{padding:27px}.shop-page #product-details{padding:32px 25px;border-radius:22px}.shop-page .shop-product-pending{max-width:none}.shop-select-list{max-height:250px}}@media(prefers-reduced-motion:reduce){.shop-select-list{animation:none}.shop-page .shop-catalog-image img{transition:none}.shop-colour-link:hover{transform:none}}
