/* Native WooCommerce checkout/account behavior, with OUD's shared visual language. */
.oud-commerce-page { --wc-form-border-color:#d8d4d0; --wc-form-border-radius:6px; --wc-form-color-text:#242424; --wc-form-color-background:#fff; }
body.oud-commerce-page.woocommerce-page #primary { width:100%; max-width:1280px; margin:0 auto; padding:38px 0 52px; float:none; }
.oud-commerce-page #primary .site-main { margin:0; }
.oud-commerce-page #primary .ast-article-single { margin:0; padding:0; background:#fff; }
.oud-commerce-page #primary .entry-content { max-width:none; margin:0; }
.oud-commerce-page #primary :is(.site-main,.ast-article-single,.entry-content) { min-width:0; }
.oud-commerce-page #primary .entry-content > :is(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) { width:100%; max-width:100%; margin-left:0; margin-right:0; }
.oud-commerce-page .entry-header { margin:0 0 28px; }
.oud-commerce-page .entry-title { color:#262626; font:500 clamp(27px,3vw,36px)/1.2 Manrope,Arial,sans-serif; letter-spacing:-.025em; margin:0; }
.oud-commerce-page .entry-content h2:not(.oud-section-heading h2) { font-family:inherit; color:#272727; }
.oud-commerce-page .entry-content .wp-block-woocommerce-cart,
.oud-commerce-page .entry-content .wp-block-woocommerce-checkout { max-width:none; margin:0; font-size:14px; line-height:1.6; }
.oud-commerce-page .woocommerce-info,
.oud-commerce-page .woocommerce-message,
.oud-commerce-page .wc-block-components-notice-banner { border-radius:8px; border:1px solid #e6dfd7; background:#faf7f3; color:#333; box-shadow:none; }
.oud-commerce-page .woocommerce-error { border-radius:8px; }
.oud-commerce-page .woocommerce-info::before,
.oud-commerce-page .woocommerce-message::before { color:#9f734d; }
.oud-empty-cart { display:flex; flex-direction:column; align-items:center; text-align:center; padding:38px 24px 44px; margin:0 0 42px; background:#faf8f5; border:1px solid #eee7df; border-radius:12px; }
.oud-empty-cart-icon { width:60px; height:60px; display:grid; place-items:center; border-radius:50%; background:#fff; color:#9f734d; margin-bottom:17px; }
.oud-empty-cart-icon svg { display:block; width:30px; height:30px; stroke-width:1.4; }
.oud-commerce-page .oud-empty-cart h2 { font-size:27px; line-height:1.3; font-weight:500; letter-spacing:-.025em; margin:0 0 12px; }
.oud-empty-cart p { max-width:530px; margin:0 0 24px; color:#666; font-size:14px; line-height:1.7; }
.oud-commerce-cta { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:46px; padding:12px 24px; background:#232323; color:#fff!important; border:1px solid #232323; border-radius:6px; text-decoration:none!important; font-size:13px; font-weight:600; }
.oud-commerce-cta:hover { background:#453a31; border-color:#453a31; }
.oud-commerce-page .oud-empty-cart-block .oud-shelf { margin:0 0 26px; }
.oud-commerce-page .return-to-shop { text-align:center; }
.oud-commerce-page .oud-empty-cart-block + .return-to-shop { display:none; }
.oud-commerce-page .wc-block-cart .wc-block-cart__submit-container { padding:16px 0 0; }
.oud-commerce-page .wc-block-cart .wc-block-cart__submit-button,
.oud-commerce-page .wc-block-components-checkout-place-order-button,
.oud-commerce-page .woocommerce .button:not(.oud-card-buy),
.oud-commerce-page .woocommerce button.button:not(.oud-card-buy) { min-height:46px; padding:12px 20px; border:1px solid #252525; border-radius:6px; background:#252525; color:#fff; font:600 13px/1.5 Manrope,Arial,sans-serif; text-decoration:none; box-shadow:none; }
.oud-commerce-page .wc-block-components-button:not(.is-link):not(.oud-card-buy) { border-radius:6px; }
.oud-commerce-page .wc-block-components-button:not(.is-link):focus-visible,
.oud-commerce-page .oud-commerce-cta:focus-visible { outline:2px solid #9f734d; outline-offset:4px; }
.oud-commerce-page .wc-block-cart-items { border-collapse:collapse; }
.oud-commerce-page .wc-block-cart-items td { border-color:#ebe7e2!important; }
.oud-commerce-page .wc-block-cart-items__header th { font-size:11px; font-weight:650; letter-spacing:.08em; color:#73706b; padding-bottom:18px; }
.oud-commerce-page .wc-block-cart-items .wc-block-cart-item__image img { border-radius:8px; background:#faf9f7; object-fit:contain; }
.oud-commerce-page .wc-block-components-product-name { font-size:15px; line-height:1.5; font-weight:500; color:#272727; text-decoration:none; }
.oud-commerce-page .wc-block-components-product-metadata { color:#72706b; font-size:12px; }
.oud-commerce-page .wc-block-components-product-price { font-size:15px; font-weight:650; }
.oud-commerce-page .wc-block-components-quantity-selector { min-height:40px; border-color:#ddd6ce; border-radius:6px; }
.oud-commerce-page .wc-block-components-quantity-selector button { color:#333; background:transparent; box-shadow:none; }
.oud-commerce-page .wc-block-cart-item__remove-link { margin-top:12px; color:#69645e!important; font-size:12px!important; text-underline-offset:3px; }
.oud-commerce-page .wc-block-cart__sidebar,
.oud-commerce-page .wc-block-checkout__sidebar { padding:22px!important; background:#fbfaf8; border:1px solid #e9e4dd; border-radius:10px; }
.oud-commerce-page .wc-block-components-totals-wrapper,
.oud-commerce-page .wc-block-components-order-summary { border-color:#e8e2da; }
.oud-commerce-page .wc-block-cart__totals-title,
.oud-commerce-page .wc-block-components-order-summary__button-text { font-size:17px!important; font-weight:600!important; text-transform:none!important; }
.oud-commerce-page .wc-block-components-totals-item { padding-top:14px; padding-bottom:14px; }
.oud-commerce-page .wc-block-components-totals-footer-item { font-size:18px; }
.oud-commerce-page .wc-block-components-checkout-step { padding-bottom:28px; }
.oud-commerce-page .wc-block-components-checkout-step__heading { margin-bottom:18px; }
.oud-commerce-page .wc-block-components-checkout-step__title { font-size:20px; font-weight:550; }
.oud-commerce-page .wc-block-components-text-input input,
.oud-commerce-page .wc-block-components-combobox .components-combobox-control__input,
.oud-commerce-page .wc-block-components-form .wc-block-components-text-input input { border-color:#d6d0c8; border-radius:6px; box-shadow:none; }
.oud-commerce-page .wc-block-components-text-input input:focus,
.oud-commerce-page .wc-block-components-combobox .components-combobox-control__input:focus { border-color:#9f734d; box-shadow:0 0 0 1px #9f734d; }
.oud-commerce-page .wc-block-components-radio-control__option { border-color:#dfd8d0; }
.oud-commerce-page .wc-block-components-radio-control__input:checked { border-color:#9f734d; }
.oud-commerce-page .wc-block-components-radio-control__input:checked::before { background:#9f734d; }
.oud-commerce-page .wc-block-checkout__actions_row { align-items:center; gap:20px; }
.oud-commerce-page .wc-block-components-checkout-return-to-cart-button { color:#615247; font-size:13px; }
.oud-commerce-page .oud-cart-cross-sells { margin-top:34px; }
.oud-commerce-page .oud-cart-cross-sells .oud-product-rail { grid-auto-columns:calc((100% - 40px)/3); }
/* The base theme resets every button radius with !important. Scope this
   exception to commerce actions, leaving icon and quantity controls intact. */
.oud-site.oud-commerce-page .woocommerce .button:not(.oud-card-buy),
.oud-site.oud-commerce-page .wc-block-cart__submit-button,
.oud-site.oud-commerce-page .wc-block-components-checkout-place-order-button,
.oud-site.oud-commerce-page .oud-commerce-cta { border-radius:8px!important; }

/* Native account login, password recovery, addresses and order lists. */
.oud-commerce-page.woocommerce-account #customer_login { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.oud-commerce-page.woocommerce-account #customer_login > div { width:auto; float:none; }
.oud-commerce-page.woocommerce-account form.login,
.oud-commerce-page.woocommerce-account form.register,
.oud-commerce-page.woocommerce-account form.lost_reset_password { border:1px solid #e9e3dc; background:#fff; border-radius:10px; padding:28px; margin:22px 0; }
.oud-commerce-page.woocommerce-account #customer_login h2,
.oud-commerce-page.woocommerce-account #primary .woocommerce > h2 { font-size:24px; font-weight:500; }
.oud-commerce-page .woocommerce form .form-row { margin-bottom:18px; padding:0; }
.oud-commerce-page .woocommerce form .form-row label { font-size:13px; font-weight:500; margin-bottom:7px; line-height:1.5; }
.oud-commerce-page .woocommerce form .form-row input.input-text,
.oud-commerce-page .woocommerce form .form-row textarea,
.oud-commerce-page .woocommerce form select { min-height:46px; padding:11px 13px; border:1px solid #d9d2ca; border-radius:6px; color:#242424; background:#fff; box-shadow:none; font-size:14px; }
.oud-commerce-page .woocommerce form .form-row input.input-text:focus,
.oud-commerce-page .woocommerce form .form-row textarea:focus { border-color:#9f734d; outline:1px solid #9f734d; }
.oud-commerce-page .woocommerce-LostPassword a { font-size:12px; color:#6d6055; text-decoration:underline; text-underline-offset:3px; }
.oud-commerce-page .woocommerce-MyAccount-navigation { width:23%; border:1px solid #e8e2da; border-radius:10px; overflow:hidden; background:#faf8f5; }
.oud-commerce-page .woocommerce-MyAccount-navigation ul { margin:0; padding:0; list-style:none; }
.oud-commerce-page .woocommerce-MyAccount-navigation li { margin:0; border-bottom:1px solid #e8e2da; }
.oud-commerce-page .woocommerce-MyAccount-navigation li:last-child { border:0; }
.oud-commerce-page .woocommerce-MyAccount-navigation a { display:block; padding:15px 18px; color:#4f4a44; font-size:13px; }
.oud-commerce-page .woocommerce-MyAccount-navigation .is-active a { color:#26221e; font-weight:700; background:#ede5da; box-shadow:inset 3px 0 #9f734d; }
.oud-commerce-page .woocommerce-MyAccount-content { width:73%; font-size:14px; }
.oud-commerce-page .woocommerce-MyAccount-content a:not(.button) { color:#785a42; text-decoration:underline; text-underline-offset:3px; }
.oud-commerce-page .woocommerce table.shop_table { border:1px solid #e8e2da; border-radius:8px; font-size:13px; }
.oud-commerce-page .woocommerce table.shop_table td,
.oud-commerce-page .woocommerce table.shop_table th { border-color:#e8e2da; padding:14px; }
.oud-commerce-page .woocommerce .woocommerce-Address-title h2,
.oud-commerce-page .woocommerce .woocommerce-Address-title h3 { font-size:20px; }
/* A focused account entry, using the same warm surfaces as OUD contact and checkout. */
body.oud-site.woocommerce-account:not(.logged-in) #primary { max-width:620px; padding-top:48px; padding-bottom:64px; }
body.oud-site.woocommerce-account:not(.logged-in) #primary:has(#customer_login) { max-width:1080px; }
.oud-site.woocommerce-account:not(.logged-in) .entry-header { margin-bottom:20px; }
.oud-site.woocommerce-account:not(.logged-in) #primary .woocommerce > h2 { font-size:20px; margin:0 0 18px; }
.oud-site.woocommerce-account:not(.logged-in) form:is(.login,.register,.lost_reset_password) { margin:0; padding:32px; background:#faf8f5; border-color:#e8e2da; border-radius:12px; }
.oud-site.woocommerce-account:not(.logged-in) form:is(.login,.register,.lost_reset_password) > p:first-child { color:#625e59; font-size:14px; line-height:1.75; }
.oud-site.woocommerce-account form.lost_reset_password .form-row-first { width:100%; float:none; }
.oud-site.woocommerce-account:not(.logged-in) .woocommerce form .input-text { min-height:50px; font-size:16px; }
.oud-site.woocommerce-account:not(.logged-in) form:is(.login,.register,.lost_reset_password) .button { display:block; width:100%; min-height:50px; margin:16px 0 0; float:none; }
.oud-site.woocommerce-account .woocommerce-form-login__rememberme { display:inline-flex; align-items:center; gap:8px; }
.oud-site.woocommerce-account .woocommerce-form-login__rememberme input { margin:0; width:16px; height:16px; }
.oud-site.woocommerce-account .woocommerce-LostPassword { margin:18px 0 0; }
.oud-site.woocommerce-account .woocommerce-LostPassword a { font-size:13px; }
.oud-site.woocommerce-account form.lost_reset_password > .form-row:last-child { margin-bottom:0; }
@media(max-width:1340px) { body.oud-commerce-page.woocommerce-page #primary { padding:32px 24px 44px; } }
@media(max-width:900px) {
 body.oud-commerce-page.woocommerce-page #primary { padding-top:26px; }
 .oud-commerce-page .wc-block-cart__sidebar,.oud-commerce-page .wc-block-checkout__sidebar { margin-top:24px; }
 .oud-commerce-page.woocommerce-account #customer_login { grid-template-columns:1fr; gap:8px; }
}
@media(max-width:700px) {
 body.oud-site.woocommerce-account:not(.logged-in) #primary { padding:28px 16px 36px; }
 .oud-site.woocommerce-account:not(.logged-in) form:is(.login,.register,.lost_reset_password) { padding:22px 20px; }
 body.oud-commerce-page.woocommerce-page #primary { padding:22px 16px 32px; }
 .oud-empty-cart { padding:26px 18px 30px; margin-bottom:28px; }
 .oud-commerce-page .oud-empty-cart h2 { font-size:22px; }
 .oud-empty-cart p { font-size:13px; }
 .oud-commerce-page .wc-block-cart__sidebar,.oud-commerce-page .wc-block-checkout__sidebar { padding:16px!important; }
 .oud-commerce-page .oud-cart-cross-sells .oud-product-rail { grid-auto-columns:calc((100% - 14px)/2); }
 .oud-commerce-page .wc-block-components-product-name { font-size:13px; }
 .oud-commerce-page .wc-block-checkout__actions_row { flex-direction:column-reverse; }
 .oud-commerce-page.woocommerce-account form.login,
 .oud-commerce-page.woocommerce-account form.register,
 .oud-commerce-page.woocommerce-account form.lost_reset_password { padding:20px; }
 .oud-commerce-page .woocommerce-MyAccount-navigation,.oud-commerce-page .woocommerce-MyAccount-content { width:100%; float:none; }
 .oud-commerce-page .woocommerce-MyAccount-navigation { margin-bottom:24px; }
 .oud-commerce-page .woocommerce-MyAccount-navigation ul { display:flex; overflow-x:auto; }
 .oud-commerce-page .woocommerce-MyAccount-navigation li { flex:0 0 auto; border-bottom:0; }
 .oud-commerce-page .woocommerce-MyAccount-navigation a { white-space:nowrap; padding:12px 15px; }
}



