.customer-page { background:#fff; color:#303034; font-family:var(--nav-sans); }
.customer-page [hidden] { display:none !important; }
.customer-page h1,.customer-page h2,.customer-page h3 { font-family:var(--nav-sans); font-weight:500; letter-spacing:0; line-height:1.4; }
.customer-page :focus-visible { outline:2px solid #94775f; outline-offset:4px; }
.customer-main { width:min(990px,calc(100% - 44px)); margin:44px auto 72px; min-height:550px; }
.customer-eyebrow { margin:0 0 12px; color:#806850; font-size:10px; letter-spacing:.16em; }
.customer-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:26px; }
.customer-heading h1 { margin:0; font-size:34px; }
.customer-heading p:not(.customer-eyebrow) { margin:12px 0 0; color:#6e6e73; font-size:13px; line-height:1.8; }
.customer-link { color:#82674f; text-decoration:none; font-size:12px; }
.customer-link:hover { text-decoration:underline; text-underline-offset:3px; }
.customer-note { margin:0 0 28px; padding:13px 16px; color:#7c7064; border:1px solid #e8e1d9; border-radius:9px; background:#faf8f5; font-size:12px; line-height:1.8; }
.customer-note strong { font-weight:500; color:#625648; }
.customer-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:36px; align-items:start; }
.cart-list { border-top:1px solid #e6e3de; }
.cart-row { display:grid; grid-template-columns:114px minmax(0,1fr); gap:22px; padding:24px 0; border-bottom:1px solid #e6e3de; }
.cart-row-image { display:block; height:120px; background:#f7f5f1; border-radius:9px; overflow:hidden; }
.cart-row-image img { display:block; width:100%; height:100%; object-fit:contain; }
.cart-row h2 { font-size:16px; margin:0; }
.cart-row h2 a { text-decoration:none; color:inherit; }
.cart-meta { font-size:12px; line-height:1.7; color:#6e6e73; margin:7px 0 13px; }
.cart-price-row,.cart-row-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; }
.cart-price { font-size:15px; white-space:nowrap; }
.cart-quantity { display:inline-flex; align-items:center; border:1px solid #dedbd6; border-radius:7px; height:34px; }
.cart-quantity button { border:0; background:transparent; width:34px; height:32px; color:#505055; font:400 17px var(--nav-sans); cursor:pointer; }
.cart-quantity button:disabled { opacity:.35; cursor:default; }
.cart-quantity output { min-width:25px; text-align:center; font-size:12px; }
.cart-row-actions { justify-content:flex-start; margin-top:15px; gap:18px; }
.customer-text-button { border:0; padding:2px 0; background:transparent; color:#88715d; font:400 11px/1.6 var(--nav-sans); cursor:pointer; }
.customer-text-button:hover { text-decoration:underline; }
.cart-summary { border:1px solid #e6e3df; border-radius:12px; background:#faf9f7; padding:24px; }
.cart-summary h2 { font-size:19px; margin:0 0 20px; }
.customer-totals { margin:0; }
.customer-totals > div { display:flex; justify-content:space-between; gap:18px; padding:9px 0; font-size:12px; line-height:1.6; }
.customer-totals dt { color:#727276; }
.customer-totals dd { margin:0; text-align:right; }
.customer-totals .customer-total { border-top:1px solid #dfdad3; margin-top:12px; padding-top:16px; }
.customer-total dd { font-size:18px; }
.customer-summary-note { font-size:11px; line-height:1.85; color:#6e6e73; margin:13px 0 20px; }
.customer-primary,.customer-secondary { display:flex; align-items:center; justify-content:center; gap:8px; min-height:46px; padding:12px 17px; border-radius:8px; text-decoration:none; font:400 13px/1.5 var(--nav-sans); cursor:pointer; }
.customer-primary { color:#fff; background:#454039; border:1px solid #454039; }
.customer-primary:hover { background:#5a4c3d; }
.customer-primary:disabled { opacity:.45; cursor:not-allowed; }
.customer-secondary { background:#fff; color:#6b5c4d; border:1px solid #ddd7cf; }
.cart-summary > .customer-link { display:block; text-align:center; margin-top:16px; }
.customer-empty { min-height:300px; display:flex; flex-direction:column; align-items:center; justify-content:center; border:1px solid #e7e3df; border-radius:12px; padding:44px 24px; text-align:center; background:#fcfbf9; }
.customer-empty-icon { display:grid; place-items:center; width:54px; height:54px; border-radius:50%; background:#efebe4; color:#927961; font-size:24px; margin-bottom:18px; }
.customer-empty h2 { margin:0 0 12px; font-size:23px; }
.customer-empty p { max-width:450px; margin:0 0 22px; font-size:13px; line-height:1.85; color:#6e6e73; }
.customer-empty .customer-primary { min-width:180px; }
.customer-live { color:#6f655b; font-size:12px; line-height:1.7; margin:18px 0; min-height:20px; }
.checkout-steps { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 30px; padding:18px 0; border-top:1px solid #e7e3df; border-bottom:1px solid #e7e3df; list-style:none; }
.checkout-steps li { font-size:12px; color:#6e6e73; }
.checkout-steps li:first-child { color:#76604c; }
.checkout-steps b { display:inline-grid; place-items:center; width:24px; height:24px; margin-right:7px; border:1px solid #d9d2c9; border-radius:50%; font-weight:400; font-size:11px; }
.checkout-form { min-width:0; }
.checkout-form h2 { font-size:21px; margin:0 0 22px; }
.checkout-fields { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.checkout-field { min-width:0; }
.checkout-field.wide { grid-column:1/-1; }
.checkout-field label { display:block; font-size:12px; margin-bottom:8px; }
.checkout-field input,.checkout-field select { width:100%; height:48px; min-width:0; border:1px solid #d7d3ce; border-radius:8px; padding:11px 13px; background:#fff; color:#48484b; font:400 14px var(--nav-sans); }
.checkout-field input:focus,.checkout-field select:focus { outline:2px solid #b7a48c; outline-offset:1px; }
.checkout-field [aria-invalid="true"] { border-color:#ae5747; }
.customer-field-error { color:#a34639; font-size:11px; line-height:1.7; margin:5px 0 0; }
.customer-field-error:empty { display:none; }
.checkout-form > .customer-primary { margin-top:26px; min-width:190px; }
.checkout-form-note { font-size:11px; color:#6e6e73; line-height:1.9; margin:15px 0; }
.checkout-status { border:1px solid #d8dfd6; border-radius:10px; padding:20px; background:#f5f8f3; margin-bottom:26px; }
.checkout-status h2 { font-size:19px; }
.checkout-status p { color:#72766d; font-size:12px; line-height:1.85; }
.checkout-items { padding:0 0 13px; margin:0 0 12px; list-style:none; border-bottom:1px solid #e1ddd6; }
.checkout-items li { display:flex; justify-content:space-between; gap:14px; margin:11px 0; font-size:11px; line-height:1.7; }
.checkout-items li span { min-width:0; overflow-wrap:anywhere; }
.customer-disabled-step { margin-top:30px; padding:20px; border:1px dashed #d9d5ce; border-radius:9px; }
.customer-disabled-step h3 { font-size:15px; }
.customer-disabled-step p { font-size:12px; color:#807c76; line-height:1.85; margin:10px 0 0; }
.customer-account-layout { display:grid; grid-template-columns:190px minmax(0,1fr); gap:40px; align-items:start; }
.customer-account-nav { display:grid; gap:6px; }
.customer-account-nav a { display:block; padding:12px 15px; border-radius:7px; color:#77716a; font-size:13px; text-decoration:none; }
.customer-account-nav a[aria-current="page"] { background:#f0ebe3; color:#6c523a; }
.customer-account-nav a:hover { background:#f7f4f0; }
.customer-panel { min-width:0; }
.customer-panel h2 { font-size:24px; margin:0 0 15px; }
.customer-panel-intro { color:#6e6e73; font-size:13px; line-height:1.9; margin:0 0 24px; }
.customer-dashboard { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.customer-dashboard a { padding:24px; border:1px solid #e6e2dc; border-radius:10px; color:inherit; text-decoration:none; }
.customer-dashboard a:hover { background:#faf8f5; }
.customer-dashboard h3 { font-size:17px; margin:0 0 8px; }
.customer-dashboard p { margin:0; font-size:12px; color:#6e6e73; line-height:1.8; }
.customer-saved-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 18px; }
.customer-saved-card { min-width:0; }
.customer-saved-card > a { display:block; color:inherit; text-decoration:none; }
.customer-saved-card img { width:100%; aspect-ratio:1.1; object-fit:contain; background:#f5f3f0; border-radius:9px; }
.customer-saved-card h3 { font-size:15px; margin-top:12px; }
.customer-saved-card p { color:#6e6e73; font-size:12px; line-height:1.8; margin:6px 0 12px; }
.customer-saved-card > div { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.customer-saved-card .customer-secondary { min-height:35px; font-size:11px; padding:8px 12px; }
.customer-security-list { border-top:1px solid #e6e2dc; }
.customer-security-list > div { padding:20px 0; border-bottom:1px solid #e6e2dc; display:flex; justify-content:space-between; gap:24px; }
.customer-security-list h3 { font-size:14px; }
.customer-security-list p { margin:6px 0 0; font-size:12px; line-height:1.8; color:#6e6e73; }
.customer-page .site-footer h3 { font-weight:500; }
@media(max-width:760px) {
  .customer-main { width:calc(100% - 40px); margin:32px auto 50px; }
  .customer-heading { align-items:start; gap:14px; }
  .customer-heading h1 { font-size:28px; }
  .customer-heading > .customer-link { display:inline-flex; align-items:center; min-height:44px; white-space:nowrap; }
  .customer-layout { grid-template-columns:1fr; gap:28px; }
  .customer-note { font-size:11px; padding:12px; }
  .cart-row { grid-template-columns:86px minmax(0,1fr); gap:14px; padding:20px 0; }
  .cart-row-image { height:97px; }
  .cart-row h2 { font-size:14px; }
  .cart-meta { font-size:11px; }
  .cart-price { font-size:14px; }
  .cart-price-row { gap:10px; }
  .cart-quantity { height:44px; }
  .cart-quantity button { width:44px; height:42px; }
  .cart-row-actions { gap:4px 18px; margin-top:8px; }
  .customer-text-button { min-height:44px; }
  .cart-row-actions .customer-link { display:inline-flex; align-items:center; min-height:44px; }
  .cart-summary { padding:22px; }
  .cart-summary > .customer-link, .customer-security-list .customer-link { display:flex; align-items:center; min-height:44px; }
  .cart-summary > .customer-link { justify-content:center; }
  .checkout-steps { gap:8px; }
  .checkout-steps li { font-size:10px; }
  .checkout-steps b { margin-right:4px; width:20px; height:20px; }
  .checkout-fields { grid-template-columns:1fr; gap:17px; }
  .checkout-field input,.checkout-field select { font-size:16px; }
  .checkout-form > .customer-primary { width:100%; }
  .customer-account-layout { grid-template-columns:1fr; gap:26px; }
  .customer-account-nav { display:flex; flex-wrap:wrap; gap:4px; padding-bottom:15px; border-bottom:1px solid #e5e0d9; }
  .customer-account-nav a { min-height:44px; display:flex; align-items:center; padding:9px 11px; font-size:12px; }
  .customer-dashboard { grid-template-columns:1fr; gap:12px; }
  .customer-dashboard a { padding:20px; }
  .customer-saved-grid { gap:22px 12px; }
  .customer-saved-card h3 { font-size:13px; }
  .customer-saved-card .customer-secondary { min-height:44px; }
  .customer-security-list > div { flex-wrap:wrap; gap:10px; }
}
