/* WooCommerce checkout, order-received and My account pages in the look of the original theme.
   (These pages have no counterpart in the Shopify theme, so they are styled here with the theme's own variables.) */

.woocommerce{--wc-line:rgb(var(--border-color,0 0 0/.12));--wc-radius:var(--rounded-input,.5rem);max-width:1180px;margin-inline:auto;font-size:1rem;color:rgb(var(--text-color,0 0 0))}
.woocommerce *,.woocommerce *::before,.woocommerce *::after{box-sizing:border-box}
/* links keep the theme's own underline (a background image); buttons and menus get none */
.woocommerce a.button,.woocommerce-MyAccount-navigation a,.woocommerce-orders-table__cell-order-actions a{background-image:none!important;text-decoration:none!important}
.woocommerce h2,.woocommerce h3{font-family:var(--heading-font-family,inherit);font-weight:var(--heading-font-weight,700);line-height:1.15;margin:0 0 1.25rem;font-size:1.5rem}
.woocommerce .clear{clear:both}

/* notices */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-info,.woocommerce-message,.woocommerce-error{list-style:none;margin:0 0 1.5rem;padding:1rem 1.25rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius);background:rgb(var(--text-color,0 0 0)/.04);font-size:.95rem}
.woocommerce-error{border-color:rgb(220 38 38/.5);background:rgb(220 38 38/.06)}
.woocommerce-message{border-color:rgb(var(--accent,0 163 65)/.5);background:rgb(var(--accent,0 163 65)/.07)}
.woocommerce-error li{margin:.2rem 0}
.woocommerce-message .button,.woocommerce-info .button{float:right;margin-left:1rem}

/* form fields */
.woocommerce form .form-row{margin:0 0 1.1rem;padding:0}
.woocommerce form .form-row label{display:block;margin:0 0 .4rem;font-size:.9rem;font-weight:500}
.woocommerce form .form-row .required{color:rgb(220 38 38);text-decoration:none;border:0}
.woocommerce form .form-row .optional{opacity:.6;font-weight:400}
.woocommerce .input-text,.woocommerce select,.woocommerce textarea,.woocommerce input[type=text],.woocommerce input[type=email],.woocommerce input[type=tel],.woocommerce input[type=password],.woocommerce input[type=number]{width:100%;min-height:3.1rem;padding:.75rem 1rem;border:1px solid rgb(var(--text-color,0 0 0)/.25);border-radius:var(--wc-radius);background:rgb(var(--background,255 255 255));color:inherit;font:inherit;line-height:1.4;box-shadow:none;appearance:none}
.woocommerce select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5 6 6.5l5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}
.woocommerce textarea{min-height:7rem;resize:vertical}
.woocommerce .input-text:focus,.woocommerce select:focus,.woocommerce textarea:focus{outline:2px solid rgb(var(--text-color,0 0 0));outline-offset:1px;border-color:transparent}
.woocommerce ::placeholder{color:rgb(var(--text-color,0 0 0)/.45)}
.woocommerce form .form-row.woocommerce-invalid .input-text,.woocommerce form .form-row.woocommerce-invalid select{border-color:rgb(220 38 38)}

/* country / state drop-downs (select2) */
.woocommerce .select2-container{width:100%!important;display:block}
.select2-container--default .select2-selection--single{height:3.1rem;border:1px solid rgb(0 0 0/.25);border-radius:var(--rounded-input,.5rem);background:#fff}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:3.05rem;padding-left:1rem;padding-right:2.5rem;color:inherit}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:3.05rem;right:.5rem}
.select2-dropdown{border:1px solid rgb(0 0 0/.25);border-radius:var(--rounded-input,.5rem);overflow:hidden;font-family:inherit}
.select2-search--dropdown .select2-search__field{border:1px solid rgb(0 0 0/.25);border-radius:6px;padding:.5rem}
.select2-container--default .select2-results__option--highlighted[aria-selected],.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:rgb(0 0 0);color:#fff}

/* buttons */
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3.1rem;padding:.75rem 1.75rem;border:0;border-radius:var(--rounded-button,3.75rem);background:rgb(var(--text-color,0 0 0));color:rgb(var(--background,255 255 255));font:inherit;font-weight:600;text-decoration:none;cursor:pointer;transition:opacity .2s}
.woocommerce .button:hover{opacity:.85}
.woocommerce .button.alt,.woocommerce #place_order{width:100%;min-height:3.5rem;font-size:1.05rem}
.woocommerce .button:disabled,.woocommerce .button.disabled{opacity:.5;cursor:not-allowed}

/* coupon */
.woocommerce-form-coupon-toggle .woocommerce-info{background:none}
.woocommerce form.checkout_coupon,.woocommerce form.woocommerce-form-login,.woocommerce form.woocommerce-form-register{margin:0 0 1.75rem;padding:1.25rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius)}
.woocommerce form.checkout_coupon{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}
.woocommerce form.checkout_coupon p{margin:0}
.woocommerce form.checkout_coupon .form-row-first{flex:1 1 220px}
.woocommerce form.checkout_coupon .form-row-last{flex:0 0 auto}
.woocommerce form.checkout_coupon>.clear{display:none}

/* checkout layout */
form.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem 3.5rem;align-items:start;margin-top:.5rem}
form.woocommerce-checkout .col2-set{display:block}
form.woocommerce-checkout .col2-set .col-1,form.woocommerce-checkout .col2-set .col-2{float:none;width:100%}
#order_review_heading{margin:0}
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.woocommerce-billing-fields__field-wrapper .form-row,.woocommerce-shipping-fields__field-wrapper .form-row,.woocommerce-additional-fields__field-wrapper .form-row{grid-column:1/-1;float:none;width:100%}
.woocommerce-billing-fields__field-wrapper .form-row-first,.woocommerce-billing-fields__field-wrapper .form-row-last,.woocommerce-shipping-fields__field-wrapper .form-row-first,.woocommerce-shipping-fields__field-wrapper .form-row-last{grid-column:auto}
.woocommerce-additional-fields{margin-top:1.5rem}
#ship-to-different-address{font-size:1rem;margin:1.5rem 0 1rem}
#ship-to-different-address label{display:flex;align-items:center;gap:.6rem;margin:0;cursor:pointer}
.woocommerce input[type=checkbox],.woocommerce input[type=radio]{width:1.15rem;height:1.15rem;min-height:0;accent-color:rgb(var(--text-color,0 0 0));margin:0;flex:none}
@media (min-width:900px){
  form.woocommerce-checkout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-areas:"details heading" "details review"}
  form.woocommerce-checkout #customer_details{grid-area:details}
  form.woocommerce-checkout #order_review_heading{grid-area:heading;align-self:end}
  form.woocommerce-checkout #order_review{grid-area:review;position:sticky;top:6.5rem}
}
@media (max-width:520px){
  .woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr}
  .woocommerce-billing-fields__field-wrapper .form-row-first,.woocommerce-billing-fields__field-wrapper .form-row-last{grid-column:1/-1}
}

/* order summary */
#order_review{padding:1.5rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius);background:rgb(var(--text-color,0 0 0)/.03)}
.woocommerce table.shop_table{width:100%;border-collapse:collapse;border:0;margin:0 0 1.25rem;font-size:.95rem}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:.8rem 0;border:0;border-bottom:1px solid var(--wc-line);text-align:left;vertical-align:top;background:none}
.woocommerce table.shop_table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;opacity:.65;font-weight:500}
.woocommerce table.shop_table .product-total,.woocommerce table.shop_table td:last-child,.woocommerce table.shop_table tfoot td{text-align:right;white-space:nowrap}
.woocommerce table.shop_table .product-name{width:100%;padding-right:1rem}
.woocommerce table.shop_table .product-quantity{font-weight:400;opacity:.7}
.woocommerce table.shop_table .variation{margin:.3rem 0 0;font-size:.85rem;opacity:.7}
.woocommerce table.shop_table .variation dt,.woocommerce table.shop_table .variation dd{display:inline;margin:0;padding:0}
.woocommerce table.shop_table .variation dd p{display:inline;margin:0}
.woocommerce table.shop_table tr.order-total th,.woocommerce table.shop_table tr.order-total td{border-bottom:0;font-size:1.2rem;font-weight:700;padding-top:1rem}
.woocommerce table.shop_table tfoot th{font-weight:500}
.woocommerce ul#shipping_method{list-style:none;margin:0;padding:0}
.woocommerce ul#shipping_method li{margin:0 0 .3rem}
.woocommerce ul#shipping_method label{display:inline;margin-left:.4rem}

/* payment */
#payment{background:none;border-radius:0}
#payment ul.payment_methods{list-style:none;margin:0 0 1.25rem;padding:0;border:1px solid var(--wc-line);border-radius:var(--wc-radius);overflow:hidden;background:rgb(var(--background,255 255 255))}
#payment ul.payment_methods li{margin:0;padding:1rem 1.1rem;border-bottom:1px solid var(--wc-line)}
#payment ul.payment_methods li:last-child{border-bottom:0}
#payment ul.payment_methods li label{display:inline;margin-left:.5rem;font-weight:600}
#payment div.payment_box{margin:.8rem 0 0;padding:.9rem 1rem;border-radius:calc(var(--wc-radius) - 2px);background:rgb(var(--text-color,0 0 0)/.05);font-size:.9rem;position:static}
#payment div.payment_box::before{display:none}
#payment div.payment_box p{margin:0}
.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper{font-size:.85rem;opacity:.75;margin-bottom:1rem}
.woocommerce-terms-and-conditions-checkbox-text{margin-left:.4rem}
#payment .place-order{padding:0;margin:0}

/* order received */
.woocommerce-order{max-width:760px;margin-inline:auto}
.woocommerce-thankyou-order-received{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}
ul.woocommerce-order-overview{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin:0 0 2rem;padding:1.25rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius)}
ul.woocommerce-order-overview li{margin:0;font-size:.85rem;opacity:.85}
ul.woocommerce-order-overview li strong{display:block;font-size:1rem;margin-top:.2rem}
.woocommerce-order-details,.woocommerce-customer-details{margin-bottom:2rem}
.woocommerce-customer-details address{padding:1rem 1.25rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius);font-style:normal;line-height:1.6}

/* my account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem}
@media (min-width:800px){.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:220px minmax(0,1fr)}}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--wc-line);border-radius:var(--wc-radius);overflow:hidden}
.woocommerce-MyAccount-navigation li{margin:0;border-bottom:1px solid var(--wc-line)}
.woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-MyAccount-navigation a{display:block;padding:.8rem 1rem}
.woocommerce-MyAccount-navigation .is-active a{font-weight:700;background:rgb(var(--text-color,0 0 0)/.05)}
.woocommerce-MyAccount-content{min-width:0}
.woocommerce-account .u-columns{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.woocommerce-account .u-columns .col-1,.woocommerce-account .u-columns .col-2{float:none;width:auto}
.woocommerce form.woocommerce-form-login .woocommerce-form-login__rememberme{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem}
.woocommerce form.woocommerce-form-login .lost_password{margin:1rem 0 0}
.woocommerce .woocommerce-input-wrapper{display:block;width:100%}

/* account forms */
.woocommerce fieldset{margin:1.5rem 0;padding:1.25rem 1.25rem .25rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius)}
.woocommerce fieldset legend{padding:0 .5rem;font-weight:700}
.woocommerce .password-input{display:block;width:100%;position:relative}
.woocommerce .password-input input{padding-right:3rem}
.woocommerce .show-password-input{position:absolute;right:.9rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;padding:0;border:0;background:none;opacity:.55;cursor:pointer}
.woocommerce .show-password-input::after{content:"";display:block;width:100%;height:100%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-7 11-7 11 7 11 7-4 7-11 7S1 12 1 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat}
.woocommerce form .form-row em,.woocommerce form .form-row .description{display:block;margin-top:.35rem;font-size:.85rem;opacity:.65;font-style:normal}
.woocommerce-EditAccountForm,.woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.woocommerce-EditAccountForm>*,.woocommerce-address-fields__field-wrapper>*{grid-column:1/-1}
.woocommerce-EditAccountForm .form-row-first,.woocommerce-EditAccountForm .form-row-last,.woocommerce-address-fields__field-wrapper .form-row-first,.woocommerce-address-fields__field-wrapper .form-row-last{grid-column:auto;float:none;width:100%}
.woocommerce-EditAccountForm .clear{display:none}
.woocommerce-Addresses{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.woocommerce-Addresses .u-column1,.woocommerce-Addresses .u-column2,.woocommerce-Addresses .col-1,.woocommerce-Addresses .col-2{float:none;width:auto;padding:1.25rem;border:1px solid var(--wc-line);border-radius:var(--wc-radius)}
.woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.8rem}
.woocommerce-Address-title h2,.woocommerce-Address-title h3{margin:0}
.woocommerce-Address address{font-style:normal;line-height:1.6}
.woocommerce-orders-table{font-size:.95rem}
.woocommerce-orders-table .button,.woocommerce-order-details .button{min-height:2.4rem;padding:.4rem 1.1rem;font-size:.9rem}
.woocommerce-MyAccount-content>p:first-child{margin-top:0}
.woocommerce-no-orders-message,.woocommerce-info.woocommerce-no-downloads{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.woocommerce-no-orders-message .button{float:none;order:2;margin:0}
.woocommerce-Address-title h2,.woocommerce-Address-title h3{font-size:1.25rem!important;line-height:1.2}
.woocommerce-Address-title a.edit{font-size:.9rem;white-space:nowrap}
.woocommerce-MyAccount-content h2,.woocommerce-MyAccount-content h3{font-size:1.35rem}
/* the theme spaces siblings with a top margin; grid items must line up */
.woocommerce-Addresses>*,.woocommerce-account .u-columns>*,.woocommerce-billing-fields__field-wrapper>*,.woocommerce-EditAccountForm>*{margin-top:0!important}

/* product pictures in checkout summary and order lists */
.lt-item{display:flex;align-items:flex-start;gap:.85rem}
.lt-item__img{flex:none;width:64px!important;height:64px!important;object-fit:cover;border-radius:8px;border:1px solid var(--wc-line);background:#fff}
.lt-item__name{min-width:0}
.lt-order-thumbs{display:flex;align-items:center;gap:.4rem}
.lt-order-thumbs .lt-item__img{width:56px!important;height:56px!important}
.lt-order-thumbs__more{font-size:.85rem;opacity:.7}

/* orders table: Woo's row class "order" collides with the theme's .order grid layout */
.woocommerce table.shop_table tr.order,.woocommerce table.shop_table tbody tr{display:table-row;gap:0}
.woocommerce table.shop_table thead{display:table-header-group}.woocommerce table.shop_table tbody{display:table-row-group}.woocommerce table.shop_table tfoot{display:table-footer-group}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{display:table-cell}
.woocommerce-orders-table th,.woocommerce-orders-table td{vertical-align:middle;padding-right:1rem}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions{text-align:right;white-space:nowrap}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-actions .button{margin-left:.4rem}
.woocommerce-orders-table__cell-order-number a{font-weight:700}
.woocommerce-table--order-details .product-name{width:auto}
@media (max-width:1100px){
  .woocommerce table.shop_table.woocommerce-orders-table thead{display:none}
  .woocommerce table.shop_table.woocommerce-orders-table,.woocommerce table.shop_table.woocommerce-orders-table tbody{display:block}
  .woocommerce table.shop_table.woocommerce-orders-table tr{display:block;padding:.9rem 0;border-bottom:1px solid var(--wc-line)}
  .woocommerce table.shop_table.woocommerce-orders-table th,.woocommerce table.shop_table.woocommerce-orders-table td{display:block;border:0;padding:.3rem 0;text-align:right;white-space:normal;overflow:hidden}
  .woocommerce-orders-table td[data-title]::before,.woocommerce-orders-table th[data-title]::before{content:attr(data-title);float:left;font-weight:600}
  .woocommerce table.shop_table.woocommerce-orders-table .woocommerce-orders-table__cell-order-items{text-align:left;width:auto}
  .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions{padding-top:.7rem}
  .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions::before{content:none}
}
.woocommerce mark{background:none;color:inherit;font-weight:700}
.woocommerce table.woocommerce-orders-table td,.woocommerce table.woocommerce-orders-table th{white-space:nowrap;padding-right:1.25rem}
.woocommerce .woocommerce-orders-table a.button,.woocommerce .woocommerce-order-details a.button{min-height:2.3rem;padding:.35rem 1rem;font-size:.9rem}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-items{width:1%}
.woocommerce-order-details .product-quantity{display:block;margin-top:.2rem}
.woocommerce-table--order-details tr td:first-child .button,.woocommerce-order-details .order-actions--heading{display:none}

/* PayPal (PymntPl PayPal for WooCommerce) in the payment list: logo only, no placeholder graphic, no empty saved-methods list */
#payment ul,#payment ol{list-style:none;margin-left:0;padding-left:0}
#payment ul.payment_methods>li.payment_method_ppcp>label{display:flex;align-items:center;gap:.6rem;margin:0;font-size:0;line-height:0}
#payment ul.payment_methods>li.payment_method_ppcp>label img{height:26px;width:auto;max-width:none;margin:0}
.wc-saved-payment-methods[data-count="0"]{display:none}
.wc-ppcp-popup__container{display:block;padding:0;margin:0}
.wc-ppcp-popup__container img{display:none}
.wc-ppcp-popup__container p{margin:0;font-size:.9rem;opacity:.8}
#payment div.payment_box.payment_method_ppcp{background:none;padding:.7rem 0 0;margin:0}
.wc-ppcp-order-review-message__container{margin-top:.6rem;font-size:.9rem}
.wc-ppcp-checkout-container{margin-top:.5rem}
