/* Scoped to the classic checkout. Keep native errors, validation and toggles visible. */
body.woocommerce-checkout .woocommerce { color:#26352e; }
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {background:#f2f3ed;border:1px solid #dce1d9;border-radius:8px;color:#344b40;padding:15px 18px 15px 48px;margin-bottom:24px;font-size:14px;line-height:1.6;}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {content:"";font-family:inherit;top:19px;left:18px;width:18px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 3h8l10 10-8 8L3 11V3zm4 3a1.5 1.5 0 100 3 1.5 1.5 0 000-3z'/%3E%3C/svg%3E") center/contain no-repeat;}
body.woocommerce-checkout .showcoupon {font-weight:600;color:#23483e;text-underline-offset:3px;margin-left:4px;}
body.woocommerce-checkout .woocommerce form.checkout_coupon {border:1px solid #dce1d9;border-radius:8px;background:#fffdf8;}
body.woocommerce-checkout form.checkout h3 {font-size:22px;margin:22px 0 16px;color:#26352e;}
body.woocommerce-checkout form.checkout .form-row {padding:0;margin:0 0 16px;}
body.woocommerce-checkout form.checkout .form-row label {font-size:14px;line-height:1.5;margin-bottom:7px;color:#34443b;}
body.woocommerce-checkout form.checkout .form-row .optional {font-size:12px;color:#68736b;}
body.woocommerce-checkout form.checkout .input-text,
body.woocommerce-checkout form.checkout select {border:1px solid #d8ddd7;border-radius:6px;background:#fff;color:#26352e;min-height:46px;padding:11px 12px;font-size:16px;box-shadow:none;box-sizing:border-box;}
body.woocommerce-checkout form.checkout textarea.input-text {min-height:84px;resize:vertical;}
body.woocommerce-checkout form.checkout .input-text:focus,
body.woocommerce-checkout form.checkout select:focus {outline:2px solid #23483e;outline-offset:1px;}
body.woocommerce-checkout .select2-container .select2-selection--single {height:46px;border:1px solid #d8ddd7;border-radius:6px;background:#fff;}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {line-height:44px;padding-left:12px;color:#26352e;font-size:16px;}
body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {height:44px;}
body.woocommerce-checkout #ship-to-different-address {font-family:inherit;font-size:15px!important;}
body.woocommerce-checkout .woocommerce-invalid .input-text {border-color:#a12622!important;}
body.woocommerce-checkout #payment {background:#fffdf8!important;border:1px solid #dce1d9;border-radius:10px;overflow:visible;}
body.woocommerce-checkout #payment ul.payment_methods {padding:20px;border-bottom:1px solid #e6e8e0;}
body.woocommerce-checkout #payment .payment_box {background:transparent!important;color:#26352e!important;margin:12px 0 0;padding:0;box-shadow:none;}
body.woocommerce-checkout #payment .payment_box::before {display:none!important;}
body.woocommerce-checkout #payment .payment_box fieldset {border:0!important;margin:0;padding:0;min-width:0;}
body.woocommerce-checkout #payment .payment_box label {color:#34443b;}
body.woocommerce-checkout #payment .form-row.place-order {padding:20px;margin:0;}
body.woocommerce-checkout .woocommerce-privacy-policy-text {font-size:13px;line-height:1.65;color:#5a665e;}
body.woocommerce-checkout .gbm-checkout-security {display:flex;gap:10px;margin:18px 0 10px;font-family:Arial,sans-serif;}
body.woocommerce-checkout .gbm-checkout-security svg {width:20px;height:22px;flex-shrink:0;color:#23483e;}
body.woocommerce-checkout .gbm-checkout-security strong {display:block;font-size:14px;line-height:1.5;color:#23483e;}
body.woocommerce-checkout .gbm-checkout-security span {display:block;font-size:12px;line-height:1.6;color:#5a665e;margin-top:3px;}
body.woocommerce-checkout .gbm-checkout-help {display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;margin:12px 0 18px;}
body.woocommerce-checkout .gbm-checkout-help a {color:#344b40;text-underline-offset:3px;}
body.woocommerce-checkout #place_order {float:none;width:100%;min-height:50px;border:1px solid #23483e;border-radius:6px;background:#23483e;color:#fff;font-size:16px;font-weight:600;}
body.woocommerce-checkout #place_order:hover {background:#193b32;}
body.woocommerce-checkout #place_order:focus-visible {outline:2px solid #23483e;outline-offset:3px;}
@media(min-width:769px){
body.woocommerce-checkout #customer_details .col-1,body.woocommerce-checkout #customer_details .col-2 {width:100%;float:none;}
body.woocommerce-checkout #customer_details {max-width:760px;}
body.woocommerce-checkout form.checkout .form-row-first {width:48%;float:left;}
body.woocommerce-checkout form.checkout .form-row-last {width:48%;float:right;}
}
@media(max-width:768px){
body.woocommerce-checkout #payment ul.payment_methods,body.woocommerce-checkout #payment .form-row.place-order {padding:16px;}
body.woocommerce-checkout form.checkout .form-row {width:100%;float:none;}
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {font-size:13px;}
}body.woocommerce-checkout .gbm-entry__content {margin-inline:auto;} body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {color:#23483e;}

/* Shopping flow: native WC forms and totals, lightweight cart dialog. */
.single-product form.cart .gbm-buy-now {display:block;clear:both;width:100%;margin:12px 0 0;min-height:48px;background:transparent!important;color:#23483e!important;border:1px solid #23483e!important;border-radius:6px;font-size:15px;font-weight:600;}
.single-product form.cart .gbm-buy-now:hover {background:#edf1eb!important;}
.single-product form.cart .gbm-buy-now:disabled {opacity:.45;cursor:not-allowed;}
#gbm-cart-panel {position:fixed;inset:0 0 0 auto;width:min(460px,100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:#fffdf8;color:#26352e;box-shadow:-12px 0 48px #0002;}
#gbm-cart-panel[open] {display:flex;flex-direction:column;}
#gbm-cart-panel::backdrop {background:rgba(20,31,26,.45);}
#gbm-cart-panel>header {display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid #e0e4db;flex:none;}
#gbm-cart-panel h2 {margin:0;font-size:24px;line-height:1.3;}
.gbm-panel-count {font:14px Arial,sans-serif;color:#647066;}
.gbm-panel-close {border:0;background:none;font-size:30px;color:#26352e;width:44px;height:44px;cursor:pointer;}
.gbm-panel-message {padding:0 24px;font-size:14px;color:#79452c;}
.gbm-panel-message:not(:empty) {padding-block:12px;}
.gbm-panel-body {display:flex;flex:1;flex-direction:column;min-height:0;overflow:auto;}
.gbm-panel-items {padding:0 24px;flex:1;}
.gbm-panel-item {display:flex;gap:16px;padding:24px 0;border-bottom:1px solid #e0e4db;}
.gbm-panel-image {width:88px;flex:none;}
.gbm-panel-image img {width:88px;height:88px;object-fit:contain;background:#f2f2eb;border-radius:6px;}
.gbm-panel-item-content {flex:1;min-width:0;}
.gbm-panel-name {font-size:15px;font-weight:600;line-height:1.5;color:#26352e;text-decoration:none;}
.gbm-panel-item dl {font-size:12px;margin:6px 0;color:#647066;}
.gbm-panel-item dt,.gbm-panel-item dd {display:inline;margin:0 6px 0 0;}
.gbm-panel-item dd p {display:inline;}
.gbm-panel-price {font-size:15px;font-weight:600;margin:8px 0;}
.gbm-panel-controls {display:flex;align-items:center;gap:0;}
.gbm-panel-controls button:not(.gbm-panel-remove),.gbm-panel-controls input {width:34px;height:38px;min-height:38px;padding:0;text-align:center;background:white;border:1px solid #d8ddd7;color:#26352e;border-radius:0;font-size:14px;}
.gbm-panel-controls input {width:40px;appearance:textfield;border-left:0;border-right:0;}
.gbm-panel-controls input::-webkit-inner-spin-button {appearance:none;}
.gbm-panel-controls .gbm-panel-remove {margin-left:auto;background:none;border:0;color:#647066;text-decoration:underline;text-underline-offset:3px;font-size:12px;padding:10px;}
.gbm-panel-controls button:disabled {opacity:.4;}
.gbm-panel-footer {position:sticky;bottom:0;background:#fffdf8;border-top:1px solid #e0e4db;padding:22px 24px;flex:none;}
.gbm-panel-subtotal,.gbm-final-total {display:flex;justify-content:space-between;gap:12px;font-size:18px;font-weight:600;}
.gbm-panel-footer p {font-size:12px;line-height:1.6;color:#647066;margin:8px 0 18px;}
.gbm-panel-footer .gbm-panel-checkout {display:block;width:100%;box-sizing:border-box;text-align:center;background:#23483e;color:white;border:1px solid #23483e;border-radius:6px;padding:15px;font-size:16px;text-decoration:none;}
.gbm-panel-fullcart {display:block;text-align:center;margin-top:14px;color:#344b40;font-size:13px;}
.gbm-panel-empty {padding:40px 24px;}
#gbm-cart-panel :focus-visible {outline:2px solid #23483e;outline-offset:3px;}
body.woocommerce-checkout .gbm-order-overview {border:1px solid #dce1d9;border-radius:8px;background:#f2f3ed;margin:0 0 18px;}
.gbm-order-overview summary {display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:16px;font-size:15px;list-style:none;}
.gbm-order-overview summary small {display:block;font-size:11px;color:#647066;margin-top:4px;}
.gbm-overview-items {padding:0 16px 16px;}
.gbm-overview-item {display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #dce1d9;font-size:13px;}
.gbm-overview-item img {width:48px;height:48px;object-fit:contain;}
.gbm-overview-item>div {flex:1;}
.gbm-overview-item small {display:block;color:#647066;margin-top:4px;}
.gbm-overview-items>p {font-size:12px;color:#647066;}
body.woocommerce-checkout .gbm-address-explanation {font-size:13px;line-height:1.6;color:#647066;margin:-5px 0 20px;}
body.woocommerce-checkout .gbm-checkout-contact {margin-bottom:24px;}
body.woocommerce-checkout #payment .gbm-payment-heading {padding:20px 20px 0;margin:0!important;font-size:22px;}
body.woocommerce-checkout .gbm-delivery-heading th {font-weight:600;color:#23483e;}
body.woocommerce-checkout .gbm-delivery-pending td {font-size:13px;color:#647066;}
body.woocommerce-checkout .gbm-final-total {margin:16px 0;}
@media(min-width:1000px){
body.woocommerce-checkout .gbm-entry__content {max-width:1120px;width:100%;}
body.woocommerce-checkout form.checkout.gbm-flow-layout {display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 48px;align-items:start;}
body.woocommerce-checkout .gbm-flow-layout #customer_details {grid-column:1;grid-row:1/5;width:100%;}
body.woocommerce-checkout .gbm-flow-layout #order_review_heading {grid-column:2;grid-row:1;}
body.woocommerce-checkout .gbm-flow-layout #order_review {grid-column:2;grid-row:2;}
body.woocommerce-checkout .gbm-order-overview {display:none;}
}
@media(max-width:480px){#gbm-cart-panel>header,.gbm-panel-footer{padding:16px;}.gbm-panel-items{padding:0 16px;}.gbm-panel-image,.gbm-panel-image img{width:72px;height:72px;}.gbm-panel-item{gap:12px;}}
@media(min-width:1000px){
body.woocommerce-checkout .gbm-flow-layout #wc-stripe-express-checkout-element {grid-column:1;grid-row:1;}
body.woocommerce-checkout .gbm-flow-layout #wc-stripe-express-checkout-button-separator {grid-column:1;grid-row:2;}
body.woocommerce-checkout .gbm-flow-layout #customer_details {grid-row:3/6;}
body.woocommerce-checkout .gbm-flow-layout #order_review_heading {grid-row:3;}
body.woocommerce-checkout .gbm-flow-layout #order_review {grid-row:4;}
body.woocommerce-checkout .gbm-flow-layout wc-order-attribution-inputs {display:none;}
}
/* Focused checkout shell. Scoped away from cart, account and order confirmation. */
body.gbm-streamlined-checkout .curated-announcement,
body.gbm-streamlined-checkout .gbm-mobile-menu,
body.gbm-streamlined-checkout .gbm-desktop-nav,
body.gbm-streamlined-checkout .gbm-brand__promise,
body.gbm-streamlined-checkout .gbm-brand__star,
body.gbm-streamlined-checkout .gbm-header-actions a:not([aria-label="Cart"]),
body.gbm-streamlined-checkout .curated-footer {display:none!important;}
body.gbm-streamlined-checkout .gbm-header-row {display:flex;justify-content:space-between;min-height:66px;padding-block:8px;width:min(1120px,calc(100% - 36px));}
body.gbm-streamlined-checkout .gbm-brand {margin:0;}
body.gbm-streamlined-checkout .gbm-brand__name {font-size:22px;}
body.gbm-streamlined-checkout .gbm-entry {padding-block:24px!important;}
body.gbm-streamlined-checkout .gbm-entry__content>h1 {margin:0 0 14px;font-size:28px;}
body.gbm-streamlined-checkout .gbm-optional-field {clear:both;margin:0 0 16px;font-size:13px;color:#526358;}
body.gbm-streamlined-checkout .gbm-optional-field summary {cursor:pointer;min-height:30px;line-height:1.6;}
body.gbm-streamlined-checkout .gbm-optional-field[open] summary {margin-bottom:10px;}
body.gbm-streamlined-checkout .gbm-checkout-contact h3 {display:flex;justify-content:space-between;align-items:center;}
body.gbm-streamlined-checkout .gbm-login-link {border:0;background:none;color:#23483e;font:14px Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;padding:8px;cursor:pointer;}
.gbm-checkout-login {max-width:440px;width:calc(100% - 36px);padding:24px;border:1px solid #dce1d9;border-radius:10px;background:#fffdf8;color:#26352e;box-sizing:border-box;}
.gbm-checkout-login::backdrop {background:#18291f88;}
.gbm-login-top {display:flex;align-items:center;justify-content:space-between;}
.gbm-login-top h2 {margin:0;font-size:26px;}
.gbm-login-top button {background:transparent;border:0;font-size:28px;width:44px;height:44px;}
.gbm-checkout-login form {margin:16px 0 0!important;padding:0!important;border:0!important;}
.gbm-checkout-login input.input-text {width:100%;box-sizing:border-box;font-size:16px;min-height:44px;padding:10px;border:1px solid #d8ddd7;border-radius:6px;}
body.gbm-streamlined-checkout .gbm-delivery-section {margin:0 0 20px;}
body.gbm-streamlined-checkout .gbm-delivery-section table {width:100%;border:1px solid #dce1d9;border-radius:8px;background:#f2f3ed;border-collapse:separate;border-spacing:0;font-size:14px;}
body.gbm-streamlined-checkout .gbm-delivery-section td,body.gbm-streamlined-checkout .gbm-delivery-section th {padding:14px;border:0;text-align:left;}
body.gbm-streamlined-checkout .gbm-delivery-section ul {padding:0;margin:0;list-style:none;}
body.gbm-streamlined-checkout .gbm-redundant-payment-label {display:none!important;}
body.gbm-streamlined-checkout #payment .cr-customer-consent {font-size:12px;line-height:1.6;color:#5a665e;}
body.gbm-streamlined-checkout .gbm-checkout-footer {border-top:1px solid #dce1d9;margin:30px 0 0;padding:20px 0;display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;font-size:12px;}
body.gbm-streamlined-checkout .gbm-checkout-footer a {color:#526358;text-underline-offset:3px;}
@media(min-width:1000px){
body.gbm-streamlined-checkout .gbm-flow-layout #customer_details {grid-row:3/8;}
body.gbm-streamlined-checkout .gbm-flow-layout .gbm-delivery-section {grid-column:2;grid-row:3;}
body.gbm-streamlined-checkout .gbm-flow-layout #order_review_heading {grid-row:4;}
body.gbm-streamlined-checkout .gbm-flow-layout #order_review {grid-row:5;}
}
@media(max-width:999px){
body.gbm-streamlined-checkout .gbm-flow-layout .woocommerce-checkout-review-order-table>thead,
body.gbm-streamlined-checkout .gbm-flow-layout .woocommerce-checkout-review-order-table>tbody {display:none;}
body.gbm-streamlined-checkout form.checkout h3 {margin-top:18px;}
body.gbm-streamlined-checkout .gbm-checkout-contact {margin-bottom:18px;}
}
body.gbm-streamlined-checkout .site-main {padding-block:0;}
body.gbm-streamlined-checkout .gbm-checkout-help {display:none;}
body.gbm-streamlined-checkout .gbm-optional-field:not([open])>.form-row {display:none!important;}
/* Compact checkout hierarchy without reducing input or payment touch targets. */
body.gbm-streamlined-checkout .gbm-header-checkout-title {margin:0 18px 0 auto;font-size:20px;line-height:1.3;letter-spacing:0;}
body.gbm-streamlined-checkout .gbm-entry {padding-block:16px!important;}
body.gbm-streamlined-checkout form.checkout h3 {margin:16px 0 10px;}
body.gbm-streamlined-checkout form.checkout .form-row {margin-bottom:10px;}
body.gbm-streamlined-checkout form.checkout .form-row label {margin-bottom:4px;}
body.gbm-streamlined-checkout .gbm-checkout-contact {margin-bottom:12px;}
body.gbm-streamlined-checkout .gbm-address-explanation {margin:0 0 12px;line-height:1.5;}
body.gbm-streamlined-checkout .gbm-optional-field {margin-bottom:10px;}
body.gbm-streamlined-checkout .gbm-delivery-section {margin-bottom:12px;}
body.gbm-streamlined-checkout .gbm-order-overview {margin-bottom:12px;}
body.gbm-streamlined-checkout .gbm-order-overview summary {padding:12px 16px;}
body.gbm-streamlined-checkout #payment .gbm-payment-title-row {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 0;}
body.gbm-streamlined-checkout #payment .gbm-payment-title-row .gbm-payment-heading {padding:0;flex-shrink:0;}
body.gbm-streamlined-checkout #payment .gbm-payment-title-row .gbm-checkout-security {margin:0;gap:6px;max-width:175px;align-items:center;}
body.gbm-streamlined-checkout #payment .gbm-payment-title-row .gbm-checkout-security svg {width:16px;height:18px;}
body.gbm-streamlined-checkout #payment .gbm-payment-title-row .gbm-checkout-security strong {font-size:11px;line-height:1.4;font-weight:500;}
body.gbm-streamlined-checkout #payment .gbm-payment-title-row .gbm-checkout-security span {display:none;}
body.gbm-streamlined-checkout #payment ul.payment_methods {padding:14px 16px;}
body.gbm-streamlined-checkout #payment .form-row.place-order {padding:14px 16px;margin:0;}
body.gbm-streamlined-checkout #payment .woocommerce-privacy-policy-text p {margin:0 0 10px;}
body.gbm-streamlined-checkout .gbm-final-total {margin:12px 0;}
body.gbm-streamlined-checkout .gbm-checkout-footer {margin-top:18px;padding-block:14px;}
@media(max-width:360px){
body.gbm-streamlined-checkout .gbm-brand__name {font-size:18px;}
body.gbm-streamlined-checkout .gbm-header-checkout-title {font-size:18px;margin-right:10px;}
}
@media(max-width:999px){
body.gbm-streamlined-checkout .gbm-flow-layout .gbm-duplicate-totals {display:none;}
body.gbm-streamlined-checkout #wc-stripe-express-checkout-button-separator {margin:12px 0 8px!important;}
body.gbm-streamlined-checkout form.checkout h3 {margin-top:12px;margin-bottom:8px;}
body.gbm-streamlined-checkout .gbm-checkout-contact {margin-bottom:4px;}
body.gbm-streamlined-checkout form.checkout .form-row {margin-bottom:8px;}
body.gbm-streamlined-checkout .gbm-address-explanation {margin-bottom:10px;}
body.gbm-streamlined-checkout .gbm-optional-field {margin-bottom:6px;}
body.gbm-streamlined-checkout .gbm-optional-field summary {min-height:26px;}
body.gbm-streamlined-checkout .gbm-delivery-section {margin-bottom:14px;}
body.gbm-streamlined-checkout .gbm-delivery-section td,
body.gbm-streamlined-checkout .gbm-delivery-section th {padding:10px 12px;}
body.gbm-streamlined-checkout #payment {margin-top:0;}
}
