/* WooCommerce native markup themed to the Suzhou Threads system.
 * Loaded alongside the page partial (which carries the tokens); uses the same
 * token names so it inherits the design on every commerce surface
 * (product, cart, checkout, account, shop, order pages).
 */

/* Fallback tokens for surfaces without a page partial (shop, account, emails). */
:root{
  --ink:#1C2B4A; --ink-deep:#14213A; --ink-soft:#2A3C61;
  --silk:#FAF7F1; --silk-dim:#F1ECE2; --silk-deep:#E9E2D3;
  --gold:#B48A3C; --gold-deep:#8A6A2F; --gold-light:#D8BE7F;
  --celadon:#8FA8A3; --celadon-deep:#4F6B66;
  --cinnabar:#9E3B34;
  --charcoal:#22252A; --stone:#6E6A63;
  --font-display:'Cormorant Garamond',Georgia,serif;
  --font-body:'Jost',system-ui,sans-serif;
  --ease-out:cubic-bezier(.16,1,.3,1);
  --t-fast:150ms ease; --t-norm:300ms;
  --r-card:6px; --r-ctrl:3px;
  --shadow-sm:0 1px 3px rgba(28,43,74,.08);
  --shadow-lift:0 18px 40px -18px rgba(28,43,74,.35);
}
body{background:var(--silk);color:var(--charcoal);font-family:var(--font-body)}
.wc-page{padding:56px 0 90px}
.woocommerce-products-header .woocommerce-products-header__title.page-title,.woocommerce h1.page-title,.woocommerce-page h1.page-title{font-family:var(--font-display);font-weight:500;color:var(--ink);font-size:clamp(2rem,4vw,3rem);margin-bottom:6px}
.woocommerce .woocommerce-result-count{color:var(--stone);font-size:13px}

/* ---- notices ---- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,
.woocommerce-noreviews,p.no-comments{
  list-style:none;padding:16px 20px;border-radius:var(--r-card,6px);
  font-size:14px;line-height:1.6;margin:0 0 22px;
}
.woocommerce-message,.woocommerce-info{background:rgba(143,168,163,.14);border:1px solid rgba(143,168,163,.45);color:var(--celadon-deep,#4F6B66)}
.woocommerce-error{background:rgba(158,59,52,.08);border:1px solid rgba(158,59,52,.35);color:var(--cinnabar,#9E3B34)}
.woocommerce-message a,.woocommerce-info a{color:var(--gold-deep,#8A6A2F);text-decoration:underline}
.woocommerce-error li{padding-left:0}
.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before,.woocommerce .woocommerce-error::before{display:none}

/* ---- buttons ---- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit{
  font-family:var(--font-body,'Jost',sans-serif);font-size:12px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;background:var(--ink,#1C2B4A);color:var(--silk,#FAF7F1);
  padding:14px 24px;border-radius:var(--r-ctrl,3px);border:none;cursor:pointer;text-decoration:none;
  display:inline-block;transition:background var(--t-fast,150ms) ease,transform var(--t-fast,150ms) ease;
}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--gold,#B48A3C);color:var(--ink-deep,#14213A)}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--gold,#B48A3C);color:var(--ink-deep,#14213A)}
.woocommerce a.button.alt:hover{background:var(--gold-light,#D8BE7F)}
.woocommerce a.remove{color:var(--stone,#6E6A63)!important;font-weight:300;text-decoration:none}

/* ---- forms ---- */
.woocommerce form .form-row{display:block;margin:0 0 18px}
.woocommerce form .form-row label{display:block;font-size:12.5px;letter-spacing:.02em;color:var(--charcoal,#22252A);margin-bottom:6px;font-weight:500}
.woocommerce form .form-row label .required{color:var(--cinnabar,#9E3B34);border:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single{
  width:100%;background:#fff;border:1px solid rgba(28,43,74,.18);border-radius:var(--r-ctrl,3px);
  padding:13px 14px;font-size:15px;font-family:var(--font-body,'Jost',sans-serif);color:var(--charcoal,#22252A);
  transition:border-color var(--t-fast,150ms) ease,box-shadow var(--t-fast,150ms) ease;min-height:50px;
}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{outline:none;border-color:var(--gold,#B48A3C);box-shadow:0 0 0 3px rgba(180,138,60,.15)}
.woocommerce form .form-row .select2-container .select2-selection--single{height:auto;display:flex;align-items:center}
.woocommerce form .form-row .select2-container .select2-selection__rendered{padding:0;line-height:1.5}
.woocommerce form .form-row .select2-container .select2-selection__arrow{top:15px;right:12px}
.woocommerce .select2-dropdown{border:1px solid rgba(28,43,74,.18);border-radius:var(--r-ctrl,3px);overflow:hidden}
.woocommerce form .form-row .woocommerce-input-wrapper{width:100%;display:block}
.woocommerce form .form-row textarea{min-height:120px;resize:vertical}
.woocommerce form .form-row.woocommerce-validated input.input-text{border-color:var(--celadon,#8FA8A3)}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:var(--cinnabar,#9E3B34)}
.woocommerce form .form-row .input-checkbox,.woocommerce form .form-row input[type=checkbox]{width:auto;margin-right:8px;accent-color:var(--gold,#B48A3C)}

/* ---- shop / archive & product loops ---- */
.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;list-style:none;margin:0;padding:0}
.woocommerce ul.products li.product{list-style:none;background:var(--silk-dim,#F1ECE2);border-radius:var(--r-card,6px);overflow:hidden}
.woocommerce ul.products li.product a{display:block;text-decoration:none;color:inherit}
.woocommerce ul.products li.product img{width:100%;height:auto}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--font-display,'Cormorant Garamond',serif);font-size:20px;font-weight:500;padding:14px 16px 2px}
.woocommerce ul.products li.product .price{font-family:var(--font-display,'Cormorant Garamond',serif);font-size:18px;color:var(--gold-deep,#8A6A2F);padding:0 16px 16px;display:block}
@media(max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.woocommerce ul.products{grid-template-columns:1fr}}

/* ---- tables (cart / order review / account) ---- */
.woocommerce table.shop_table{width:100%;border-collapse:collapse;background:#fff;border:1px solid rgba(28,43,74,.1);border-radius:var(--r-card,6px);overflow:hidden}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px 16px;border-bottom:1px solid rgba(28,43,74,.08);text-align:left;font-size:14px}
.woocommerce table.shop_table th{background:var(--silk-dim,#F1ECE2);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone,#6E6A63);font-weight:600}
.woocommerce table.shop_table tr:last-child td{border-bottom:none}
.woocommerce table.shop_table .product-quantity input.qty{width:64px;padding:8px;border:1px solid rgba(28,43,74,.18);border-radius:var(--r-ctrl,3px)}
.woocommerce .cart .button{width:auto}
.woocommerce .cart_totals h2,.woocommerce .woocommerce-billing-fields h3,.woocommerce #order_review_heading,.woocommerce #ship-to-different-address{font-family:var(--font-display,'Cormorant Garamond',serif);font-size:22px;font-weight:500;color:var(--ink,#1C2B4A);margin:26px 0 14px}

/* ---- checkout two-column default (kept native) ---- */
.woocommerce form.checkout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:34px;align-items:start}
.woocommerce form.checkout #customer_details{grid-column:1;min-width:0}
.woocommerce form.checkout #order_review{grid-column:2;background:var(--silk-dim,#F1ECE2);border:1px solid rgba(28,43,74,.08);border-radius:var(--r-card,6px);padding:22px 22px 26px;position:sticky;top:96px}
.woocommerce form.checkout #order_review_heading{font-size:18px;margin:0 0 12px}
.woocommerce form.checkout #order_review table.shop_table{background:transparent;border:none}
.woocommerce form.checkout #order_review table.shop_table td,.woocommerce form.checkout #order_review table.shop_table th{padding:10px 0;font-size:13.5px}
.woocommerce form.checkout #payment{background:transparent;border-radius:var(--r-card,6px);margin-top:14px}
.woocommerce form.checkout #payment ul.payment_methods{list-style:none;padding:0;border-bottom:none}
.woocommerce form.checkout #payment ul.payment_methods li{border:1px solid rgba(28,43,74,.12);border-radius:var(--r-ctrl,3px);margin:0 0 10px;padding:12px 14px;background:#fff}
.woocommerce form.checkout #payment div.payment_box{background:var(--silk-dim,#F1ECE2);border-radius:var(--r-ctrl,3px);padding:12px;margin-top:10px;font-size:13px}
.woocommerce form.checkout #payment div.payment_box::before{display:none}
.woocommerce form.checkout .place-order .button{width:100%;padding:18px;background:var(--gold,#B48A3C);color:var(--ink-deep,#14213A);font-size:13px}
.woocommerce form.checkout .place-order .button:hover{background:var(--gold-light,#D8BE7F)}
.woocommerce-checkout .woocommerce-info,.woocommerce-order-received .woocommerce-info{margin-top:0}
@media(max-width:900px){.woocommerce form.checkout{grid-template-columns:1fr}.woocommerce form.checkout #order_review{position:static}}

/* ---- my account / order pages ---- */
.woocommerce-account .woocommerce-MyAccount-navigation{list-style:none;padding:0;margin:0 0 30px;display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid rgba(28,43,74,.1)}
.woocommerce-account .woocommerce-MyAccount-navigation li{margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:10px 16px;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--stone,#6E6A63);text-decoration:none}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{color:var(--gold-deep,#8A6A2F);border-bottom:2px solid var(--gold,#B48A3C)}
.st-account-hero{padding:150px 0 64px;background:var(--silk-dim,#F1ECE2);text-align:center}
.st-account-hero .st-account-kicker{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep,#8A6A2F);font-weight:600}
.st-account-hero h1{font:500 clamp(44px,6vw,70px)/1.05 var(--font-display,Georgia,serif);color:var(--ink,#1C2B4A);margin:12px 0}
.st-account-hero p:last-child{color:var(--stone,#6E6A63);font-size:16px}
.st-account-body{padding:48px 0 90px}
.st-account-content{max-width:980px;margin:0 auto}
.st-account-content .woocommerce-form-login{max-width:520px;margin:0 auto 32px;padding:32px;border:1px solid rgba(28,43,74,.12);background:#fff;border-radius:6px}
.st-account-content .woocommerce > form.woocommerce-form-login.login{display:block;width:100%;max-width:520px;margin:0 auto 32px}
.st-account-content .woocommerce>h2{text-align:center;font:500 30px var(--font-display,Georgia,serif);color:var(--ink,#1C2B4A);margin-bottom:20px}
.st-account-help{max-width:980px;margin:42px auto 0;padding:24px 28px;background:#fff;border-left:3px solid var(--gold,#B48A3C);display:flex;align-items:center;justify-content:space-between;gap:24px}
.st-account-help strong{font-size:15px;color:var(--ink,#1C2B4A)}
.st-account-help p{font-size:13px;color:var(--stone,#6E6A63);margin:4px 0 0}
.st-account-help>a{color:var(--gold-deep,#8A6A2F);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.st-account-content .woocommerce-MyAccount-content{min-width:0}
.st-account-content .woocommerce-orders-table{max-width:100%}
@media(max-width:700px){
  .woocommerce-account .st-account-hero,
  .woocommerce-account .st-account-body{width:100%;max-width:100%;overflow:hidden}
  .woocommerce-account .st-account-hero>.container,
  .woocommerce-account .st-account-body>.container{width:100%;max-width:100%;padding-left:20px;padding-right:20px}
  .st-account-hero{padding:120px 0 48px}
  .st-account-hero p:last-child{max-width:32ch;margin-left:auto;margin-right:auto}
  .st-account-body{padding:32px 0 64px}
  .st-account-content,
  .st-account-content>.woocommerce{width:100%;max-width:100%;min-width:0}
  .st-account-content .woocommerce-form-login,
  .st-account-content .woocommerce>form.woocommerce-form-login.login{
    width:100%!important;
    max-width:100%!important;
    min-width:0;
    margin-left:0!important;
    margin-right:0!important;
    padding:22px;
    box-sizing:border-box;
  }
  .st-account-help{display:block;width:100%;max-width:100%;padding:20px;box-sizing:border-box}
  .st-account-help>a{display:inline-block;margin-top:14px;white-space:normal}
  .st-account-content .woocommerce-MyAccount-navigation{max-width:100%;overflow-x:auto;flex-wrap:nowrap}
  .st-account-content .woocommerce-MyAccount-navigation a{white-space:nowrap}
  .st-account-content .woocommerce-orders-table{display:block;max-width:100%;overflow-x:auto}
}
.woocommerce-order p{margin-bottom:10px}
.woocommerce-order .woocommerce-customer-details address{border:1px solid rgba(28,43,74,.12);border-radius:var(--r-card,6px);padding:18px;font-style:normal;line-height:1.9}

/* ---- PDP add-on additions (kept inside silk-shadow partial namespace) ---- */
.st-photo-err{color:var(--cinnabar,#9E3B34);font-size:13px;margin-top:10px}
.st-cta-note{color:var(--cinnabar,#9E3B34);font-size:13.5px;margin-top:12px}
.st-cart-photo{border-radius:var(--r-card,6px);object-fit:cover}
.st-photo-ok{color:var(--celadon-deep,#4F6B66);font-size:13px;margin-top:10px}

/* ---- checkout embedded area ---- */
.co-wc{padding:26px 0 60px}
.co-wc .woocommerce>h2,.co-wc .woocommerce>h3{font-family:var(--font-display,'Cormorant Garamond',serif);color:var(--ink,#1C2B4A)}
#add_payment_method #payment ul.payment_methods li img,.woocommerce-checkout #payment ul.payment_methods li img{max-height:26px;width:auto;margin-left:8px}
.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{float:none;width:auto}

/* review order images kept small */
#order_review .product-thumbnail img{width:48px;height:48px;object-fit:cover;border-radius:4px}

/* hide legacy cart totals table duplication on our custom cart page */
.woocommerce-cart .wc-proceed-to-checkout{display:none}
