/* WooCommerce surfaces in the Corven system: bag, checkout, account, notices, reviews. */
.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.cart-empty{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 28px;padding:16px 20px;background:var(--fog);border-left:2px solid var(--ink);font-size:15px;list-style:none}
.woocommerce-error{display:block}.woocommerce-error li+li{margin-top:6px}
.woocommerce-message a:not(.button),.woocommerce-info a:not(.button){text-decoration:underline;text-underline-offset:4px}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,#place_order,.woocommerce-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:0;font-family:var(--sans);font-size:14px;font-weight:500;font-stretch:112%;letter-spacing:.04em;line-height:1;cursor:pointer;text-decoration:none;transition:background-color .3s var(--ease),color .3s var(--ease)}
.woocommerce .button:hover,#place_order:hover{background:transparent;color:var(--ink)}
.woocommerce .button:disabled,.woocommerce .button.disabled{opacity:.45;cursor:not-allowed}
.woocommerce-message .button,.woocommerce-info .button{min-height:44px;order:2}
.woocommerce form .form-row{margin:0 0 18px;padding:0}
.woocommerce form .form-row label{display:block;margin-bottom:8px;font-size:13px;font-weight:500;font-stretch:108%}
.woocommerce form .form-row .required{color:var(--ink);text-decoration:none}
.woocommerce form .form-row .optional{color:var(--ash);font-weight:400}
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select,.woocommerce form .form-row select{width:100%;min-height:52px;padding:12px 16px;border:1px solid #c4c4c4;border-radius:0;background:var(--paper);color:var(--ink);font-size:16px;box-shadow:none}
.woocommerce textarea{min-height:120px}
.woocommerce input.input-text:focus,.woocommerce textarea:focus,.woocommerce select:focus{border-color:var(--ink);outline:1px solid var(--ink);outline-offset:0}
.select2-container .select2-selection--single{height:52px!important;border:1px solid #c4c4c4!important;border-radius:0!important}
.select2-container .select2-selection--single .select2-selection__rendered{padding:0 16px!important;line-height:50px!important;color:var(--ink)!important}
.select2-container .select2-selection--single .select2-selection__arrow{height:50px!important;right:10px!important}
.select2-dropdown{border-color:var(--ink)!important;border-radius:0!important}
.select2-results__option--highlighted{background:var(--ink)!important;color:var(--paper)!important}
.woocommerce form .form-row-first,.woocommerce form .form-row-last{width:100%}
@media (min-width:640px){.woocommerce form .form-row-first{float:left;width:calc(50% - 10px)}.woocommerce form .form-row-last{float:right;width:calc(50% - 10px)}.woocommerce form .form-row-wide{clear:both}}
.woocommerce-billing-fields__field-wrapper::after,.woocommerce-shipping-fields__field-wrapper::after,.woocommerce-address-fields__field-wrapper::after{content:"";display:table;clear:both}
.col2-set .col-1,.col2-set .col-2{width:100%;float:none}
#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-additional-fields h3,#ship-to-different-address,.cart_totals h2,.woocommerce-order-details__title,.woocommerce-column__title,.woocommerce-customer-details h2,.woocommerce-MyAccount-content h2,.woocommerce-Address-title h3,.u-column1 h2,.u-column2 h2{margin:0 0 24px;font-family:var(--serif);font-weight:400;font-size:clamp(1.4rem,1.2rem + .7vw,1.8rem);line-height:1.2}
@media (min-width:1024px){form.checkout.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0 clamp(40px,5vw,96px);align-items:start}form.checkout .woocommerce-NoticeGroup{grid-column:1/-1}#customer_details{grid-column:1;grid-row:1/span 2}#order_review_heading{grid-column:2;grid-row:1}#order_review{grid-column:2;grid-row:2;position:sticky;top:calc(var(--header-h) + 24px)}}
#order_review{padding:clamp(20px,3vw,36px);background:var(--fog)}
.woocommerce table.shop_table{width:100%;border-collapse:collapse;font-size:15px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px 12px 14px 0;border-bottom:1px solid var(--mist);text-align:left;vertical-align:middle}
.woocommerce table.shop_table thead th{font-size:12px;font-weight:500;font-stretch:112%;letter-spacing:.06em;color:var(--graphite)}
.woocommerce table.shop_table tfoot th{font-weight:400;color:var(--graphite)}
.woocommerce table.shop_table .order-total th,.woocommerce table.shop_table .order-total td{border-bottom:0;font-size:18px;font-weight:500;color:var(--ink)}
.woocommerce-checkout-review-order-table .product-name{font-family:var(--serif);font-size:1.15rem}
#payment ul.payment_methods{margin:24px 0 8px;padding:0;list-style:none;border-top:1px solid var(--mist)}
#payment ul.payment_methods li{padding:14px 0;border-bottom:1px solid var(--mist)}
#payment ul.payment_methods li label{font-weight:500;cursor:pointer}
#payment input[type=radio]{accent-color:var(--ink);margin-right:10px}
#payment .payment_box{margin-top:12px;padding:14px 16px;background:var(--paper);font-size:14px;line-height:1.6;color:var(--graphite)}
#place_order{width:100%;min-height:56px;margin-top:16px}
.woocommerce-privacy-policy-text,.woocommerce-terms-and-conditions-wrapper{margin-top:16px;font-size:13px;line-height:1.6;color:var(--graphite)}
.woocommerce-privacy-policy-text a{text-decoration:underline}
.woocommerce-form-coupon-toggle .woocommerce-info{border-left-color:var(--ash)}
.woocommerce-cart-form .product-thumbnail img{width:96px;height:auto;background:var(--fog);mix-blend-mode:multiply}
.woocommerce-cart-form .product-name a{font-family:var(--serif);font-size:1.45rem;line-height:1.1}
.woocommerce-cart-form .product-remove a{display:inline-grid;place-items:center;width:36px;height:36px;font-size:22px;color:var(--graphite)}
.woocommerce-cart-form .product-remove a:hover{color:var(--ink)}
.woocommerce .quantity .qty{width:76px;min-height:44px;padding:8px;border:1px solid #c4c4c4;text-align:center}
.woocommerce-cart-form td.actions{padding-top:20px}
.woocommerce-cart-form .coupon{display:inline-flex;flex-wrap:wrap;gap:8px;margin-right:12px}
.woocommerce-cart-form .coupon label{position:absolute;left:-9999px}
.woocommerce-cart-form .coupon .input-text{width:200px}
.cart-collaterals{margin-top:48px}
.cart_totals{max-width:520px;margin-left:auto;padding:clamp(20px,3vw,36px);background:var(--fog)}
.wc-proceed-to-checkout .checkout-button{width:100%;min-height:56px;margin-top:20px}
.return-to-shop{margin-top:8px}
@media (max-width:767px){
  .woocommerce-cart-form .shop_table_responsive thead{display:none}
  .woocommerce-cart-form .shop_table_responsive tr.cart_item{display:grid;grid-template-columns:88px 1fr;gap:4px 16px;padding:16px 0;border-bottom:1px solid var(--mist)}
  .woocommerce-cart-form .shop_table_responsive td{display:block;padding:2px 0;border:0;text-align:left!important}
  .woocommerce-cart-form .shop_table_responsive td[data-title]::before{content:attr(data-title) " ";margin-right:6px;font-size:12px;color:var(--graphite)}
  .woocommerce-cart-form td.product-thumbnail{grid-row:1/span 5}
  .woocommerce-cart-form td.product-thumbnail::before,.woocommerce-cart-form td.product-remove::before{display:none}
  .woocommerce-cart-form td.actions{display:block}
  .woocommerce-cart-form .coupon{display:flex;margin:0 0 12px}.woocommerce-cart-form .coupon .input-text{flex:1;width:auto}
}
.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0 0 32px;padding:0 0 16px;list-style:none;border-bottom:1px solid var(--mist)}
.woocommerce-MyAccount-navigation a{font-size:14px;font-weight:500;font-stretch:108%}
.woocommerce-MyAccount-navigation .is-active a{text-decoration:underline;text-underline-offset:6px}
.woocommerce-MyAccount-content{font-size:16px;line-height:1.7}
.woocommerce-MyAccount-content a{text-decoration:underline;text-underline-offset:4px}
.u-columns.col2-set{display:grid;gap:32px}
@media (min-width:900px){.u-columns.col2-set{grid-template-columns:1fr 1fr}}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.track_order,.woocommerce-ResetPassword{max-width:620px;padding:clamp(24px,4vw,40px);border:1px solid var(--mist)}
.woocommerce form.track_order>p:first-child{margin-bottom:20px;color:var(--graphite)}
.woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:8px;margin-right:16px;font-size:14px}
.lost_password a{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.woocommerce-order-overview{display:grid;gap:10px;margin:0 0 32px;padding:20px;list-style:none;background:var(--fog)}
.woocommerce-order-overview strong{display:block;font-size:17px}
.woocommerce-customer-details address{padding:20px;border:1px solid var(--mist);font-style:normal;line-height:1.7}
.woocommerce-thankyou-order-received{font-family:var(--serif);font-size:1.4rem;margin-bottom:24px}
#reviews .woocommerce-Reviews-title,#reply-title{display:block;margin-bottom:24px;font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,1.2rem + 1.2vw,2.4rem);line-height:1.15}
#reviews ol.commentlist{margin:0 0 40px;padding:0;list-style:none}
#reviews .comment_container{padding:24px 0;border-top:1px solid var(--mist)}
#reviews .comment-text .meta{margin:8px 0;font-size:13px;color:var(--graphite)}
#reviews .comment-text .description{line-height:1.7}
#reviews .woocommerce-noreviews{margin-bottom:24px;color:var(--graphite)}
.star-rating{position:relative;display:inline-block;width:5.6em;height:1.1em;overflow:hidden;font-family:system-ui,sans-serif;font-size:14px;line-height:1.1}
.star-rating::before{content:"\2605\2605\2605\2605\2605";position:absolute;top:0;left:0;color:var(--mist);letter-spacing:.12em}
.star-rating span{position:absolute;top:0;left:0;height:100%;overflow:hidden;padding-top:1.6em}
.star-rating span::before{content:"\2605\2605\2605\2605\2605";position:absolute;top:0;left:0;color:var(--ink);letter-spacing:.12em}
#review_form_wrapper{margin-top:24px;padding:clamp(24px,4vw,40px);border:1px solid var(--mist)}
.comment-form>p{margin-bottom:18px}
.comment-form label{display:block;margin-bottom:8px;font-size:13px;font-weight:500}
.comment-form textarea,.comment-form input[type=text],.comment-form input[type=email]{width:100%;min-height:52px;padding:12px 16px;border:1px solid #c4c4c4;border-radius:0;font-size:16px}
.comment-form .submit{min-height:52px;padding:0 28px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-weight:500;font-stretch:112%;letter-spacing:.04em;cursor:pointer}
.comment-form-cookies-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px}
p.stars a{position:relative;display:inline-block;width:28px;height:28px;font-size:0;text-decoration:none}
p.stars a::before{content:"\2606";position:absolute;inset:0;font-size:24px;line-height:28px;color:var(--ink)}
p.stars:hover a::before,p.stars.selected a::before{content:"\2605"}
p.stars a:hover~a::before,p.stars.selected a.active~a::before{content:"\2606"}
