/* One header stays in the viewport, with a clear top state and a frosted scrolled state. */
.masthead,.catalog-shell .masthead{--u:clamp(.65px,.06944444vw,1.55px);position:fixed;inset:0 0 auto;z-index:20;height:calc(78 * var(--u));transition:background .25s,box-shadow .25s}
.catalog-shell{container-type:normal;height:clamp(70px,6.67vw,130px)}
.masthead.is-glass{background:rgb(255 253 248/.78);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 1px 0 #aa9a7f3b,0 5px 24px #43331b0d}
html{scroll-padding-top:clamp(58px,5.6vw,110px)}
.menu nav .reach{align-content:center;color:white}
.menu nav .row-label{height:auto;padding-left:2.8%;font-size:min(2.25vw,5.3dvh);line-height:1.1;font-weight:600}
@media(prefers-reduced-motion:no-preference){.menu[open]:not(.closing) nav .row-label{animation:menu-ink-in 440ms cubic-bezier(.16,.78,.24,1) calc(270ms + var(--row)*66ms) both}}
.discount{isolation:auto;overflow:visible;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:8px;align-items:stretch;padding:clamp(35px,4vw,66px) 4.17%;background:#f5f3ee}
.offer-copy,.discount-form{min-width:0;border-radius:17px;padding:clamp(28px,3vw,54px)}
.offer-copy{background:#87632f;color:white;align-content:center}
.offer-copy h2{font-size:clamp(32px,3.2vw,54px);line-height:1.1;margin:0}
.offer-copy p{font-size:clamp(16px,1.25vw,20px);line-height:1.45;max-width:34ch;margin:22px 0 0}
.discount-form{background:white;color:#28231e}
.offer-fields,.contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.offer-fields label,.contact-fields label{display:block;font:600 14px/1.4 Euclid,Arial,sans-serif;color:#594529}
.offer-fields .wide,.contact-fields .wide{grid-column:1/-1}
.offer-fields input,.contact-fields :is(input,textarea){display:block;margin-top:6px;width:100%;height:49px;border:1px solid #dcd5c9;border-radius:10px;background:#fff;color:#433725;padding:0 15px;font:300 16px/1.35 Euclid,Arial,sans-serif}
.contact-fields textarea{height:90px;padding:12px 15px}
.offer-fields input:focus,.contact-fields :is(input,textarea):focus,.checkout fieldset input:focus,#query:focus{
  outline:2px solid transparent;
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgb(191 144 66 / .2);
}
form ::selection,#query::selection{background:#f0dfbe;color:#433317}
.choice-control:focus-within::after{border-color:var(--gold)}
.offer-consent{margin-top:20px;color:#61584d;font-size:13px;line-height:1.4}
.offer-consent input{background:#fff;border:1.5px solid #9e927d;width:22px;height:22px}
.offer-consent input:checked{background:#896324}
.offer-consent .privacy-link{color:#664d29}
.offer-submit{width:auto;padding:0 24px;margin-top:16px;height:48px;font-size:16px;border-radius:8px}
.choice-control{position:relative;min-width:0}
.choice-control::after{content:"";position:absolute;pointer-events:none;right:16px;top:45px;width:7px;height:7px;transform:rotate(45deg);border:solid #8a6b3f;border-width:0 1.5px 1.5px 0}
.choice-control input{padding-right:34px}
.choice-control:focus-within{z-index:5}
.choice-list{position:absolute;z-index:5;inset:calc(100% + 4px) 0 auto;padding:6px;max-height:230px;overflow:auto;background:white;border:1px solid #ddd4c5;border-radius:12px;box-shadow:0 8px 28px #49371720}
.choice-option{position:relative;padding:10px 36px 10px 12px;border-radius:7px;color:#554633;font-size:15px;cursor:pointer}
.choice-option:hover,.choice-option.highlighted,.choice-option[aria-selected=true]{background:#f6efdf;color:#78551d}
.choice-option[aria-selected=true]::after,
.product-actions button[aria-pressed=true]::before{
  content:"";
  display:inline-block;
  width:1.12em;
  height:1.12em;
  background:currentColor;
  mask:var(--check-icon) center/contain no-repeat;
}
.choice-option[aria-selected=true]::after{position:absolute;right:13px;top:50%;transform:translateY(-50%)}
.product-actions button[aria-pressed=true]::before{vertical-align:-.17em;margin-inline-end:.35em}
.offer-tone{grid-column:1/-1;color:#645130;font-size:14px;margin:0}
.product-content{padding:28px 4.17% clamp(48px,5vw,80px)}
.product-layout{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(32px,5vw,85px)}
.product-portrait{display:block;width:100%;height:auto;max-height:75vh;object-fit:contain;background:#f1f1ef}
.product-info{max-width:570px}.product-info h1{font:600 clamp(28px,2.5vw,46px)/1.16 Euclid,Arial,sans-serif;margin:12px 0 18px}.product-info>p{line-height:1.52}.product-price{font-size:25px;font-weight:600}.product-sku,.product-size{color:#746a5b}
.tone-picker{margin:25px 0;padding:0;border:0;display:flex;flex-wrap:wrap;gap:8px}.tone-picker legend{font-weight:600;margin-bottom:10px}
.tone-picker label{position:relative;display:flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid #d6d0c5;border-radius:20px;font-size:14px;cursor:pointer}
.tone-picker input{position:absolute;opacity:0;inset:0;cursor:pointer;width:100%;height:100%;margin:0}.tone-picker label:has(:checked){border-color:#916c30;background:#f6f0e4}.tone-picker label:focus-within{outline:2px solid #87632f}.tone-picker span{width:16px;height:16px;border-radius:50%;background:var(--tone);border:1px solid #bcb5a9}
.product-actions{display:flex;gap:10px}.product-actions button{padding:12px 22px;border:1px solid #9e8a67;border-radius:4px}.product-actions button:first-child,.product-actions button[aria-pressed=true]{background:#594529;color:white}.product-offer{display:inline-block;margin-top:18px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:680px){.discount,.product-layout{grid-template-columns:1fr}.offer-fields{grid-template-columns:1fr}.product-portrait{max-height:55vh}.menu{width:min(80vw,calc(100dvh * 372/629))}.menu nav .row-label{font-size:min(6.4vw,5.3dvh)}}

/* Basket and checkout */
.cart-item{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:start}
.cart-item img{width:100%;aspect-ratio:4/5;object-fit:contain;background:#f1f1ef;border-radius:8px}
.cart-item .cart-tone{font-size:13px;color:#5d5850;margin:7px 0}
.cart-item .item-controls{gap:6px 14px;font-size:13px}
.order-total{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:20px 0 12px;font-size:16px}
.order-total strong{white-space:nowrap}
.cart-next{width:100%;border:0;border-radius:8px;cursor:pointer;transition:background .2s}
.cart-next:hover{background:#805a26}
.checkout{width:min(920px,94vw);max-height:90dvh;border-radius:20px;background:#fff;padding:clamp(22px,3vw,42px);box-shadow:0 24px 100px #28201833;margin:auto}
.checkout::backdrop{background:#27241f45;backdrop-filter:blur(4px)}
.checkout-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:24px}
.checkout-head .dismiss{flex:none}
.checkout-kicker{font-size:12px;color:#827052;letter-spacing:.14em;text-transform:uppercase}
.checkout h2{font-size:clamp(27px,3vw,42px);letter-spacing:-.045em;margin:7px 0 0;line-height:1.1}
.checkout-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(20px,3vw,38px);align-items:start}
.checkout fieldset{min-width:0;border:0;margin:0 0 20px;padding:0}
.checkout legend,.order-summary>h3{font-size:20px;font-weight:600;line-height:1.2;margin:0 0 12px}
.checkout fieldset label{display:block;font-size:13px;color:#514c45;margin:8px 0}
.checkout fieldset input{display:block;margin-top:4px;width:100%;font:inherit;font-size:15px;background:#faf9f6;color:#191817;border:1px solid #dedad1;border-radius:8px;padding:11px 13px}
.order-summary{border-radius:14px;background:#f7f6f2;padding:20px}
.order-summary .cart-item{grid-template-columns:60px minmax(0,1fr);gap:12px;padding:12px 0}
.order-summary .item h3{font-size:15px}
.order-summary>p,.order-demo,.order-consent,.order-status{font-size:13px;line-height:1.5;color:#5e574e}
.order-summary>p{margin:12px 0 18px}
.order-consent{display:flex;align-items:flex-start;gap:9px}
.order-consent input{width:16px;height:16px;flex:none;accent-color:#976f31;margin:2px 0}
.order-consent button{color:inherit;text-decoration:underline;cursor:pointer}
.order-demo{margin:12px 0 0}
.order-status:empty{display:none}
.order-status{padding:12px;background:#f4f1e9;border-radius:8px;margin:8px 0 0}
@media(max-width:700px){.checkout-grid{display:flex;flex-direction:column}.checkout-grid>*{width:100%}.order-summary{order:-1}.checkout{padding:20px}.cart-item{grid-template-columns:68px minmax(0,1fr)}}


/* Use the same rounded stroke for selected actions, options and native form controls. */
:root{--check-icon:url("assets/check.svg")}
:is(.offer-consent,.contact-agreement,.order-consent) input[type="checkbox"]{
  appearance:none;
  border:1.5px solid #9e927d;
  background-color:white;
  border-radius:4px;
  cursor:pointer;
}
.offer-consent input[type="checkbox"]{border-radius:50%}
:is(.offer-consent,.contact-agreement,.order-consent) input[type="checkbox"]:checked{
  border-color:#896324;
  background:#896324 var(--check-icon) center/82% 82% no-repeat;
}
@media(forced-colors:active){
  :is(.offer-consent,.contact-agreement,.order-consent) input[type="checkbox"]{appearance:auto}
  .choice-option[aria-selected=true]::after,.product-actions button[aria-pressed=true]::before{forced-color-adjust:none;background:ButtonText}
}
