/* VT-005A – Checkout and shipping */
.vt-checkout-page .vt-wc-shell{background:#f7f6f1;padding-top:30px;padding-bottom:90px}
.vt-checkout-intro{max-width:1240px;margin:0 auto 30px;padding:clamp(25px,4vw,48px);border-radius:24px;background:#202522;color:#fff}
.vt-checkout-intro h1{margin:.25rem 0 .7rem;color:#fff;font-size:clamp(2rem,4vw,3.5rem)}
.vt-checkout-intro p{max-width:760px;margin:0;color:rgba(255,255,255,.75)}
.vt-checkout-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}
.vt-checkout-progress span{padding:11px 14px;border:1px solid rgba(255,255,255,.15);border-radius:99px;color:rgba(255,255,255,.58);font-size:.76rem;font-weight:800;text-align:center;text-transform:uppercase;letter-spacing:.05em}
.vt-checkout-progress .is-done,.vt-checkout-progress .is-active{color:#fff;border-color:#829064;background:rgba(130,144,100,.22)}
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);gap:28px;align-items:start}
.woocommerce-checkout #customer_details{display:grid;gap:20px}
.woocommerce-checkout #customer_details>div{float:none!important;width:auto!important;padding:0!important}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{float:none!important;width:100%!important}
.woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout .woocommerce-shipping-fields,.woocommerce-checkout .woocommerce-additional-fields{padding:26px;border:1px solid #e1e1da;border-radius:20px;background:#fff}
.woocommerce-checkout h3{font-size:1.25rem;margin:0 0 20px;color:#202522}
.woocommerce-checkout #order_review_heading{grid-column:2;margin:0;padding:0 24px;font-size:1.25rem}
.woocommerce-checkout #order_review{grid-column:2;position:sticky;top:105px;margin:0;border:1px solid #dddeda!important;border-radius:20px!important;padding:24px!important;background:#fff;box-shadow:0 15px 45px rgba(30,38,32,.07)}
.woocommerce-checkout .woocommerce-checkout-payment{background:#f5f5f0!important;border-radius:15px!important}
.woocommerce-checkout #payment ul.payment_methods{padding:18px!important;border-bottom:1px solid #e2e2dc!important}
.woocommerce-checkout #payment div.form-row{padding:18px!important}
.woocommerce-checkout #place_order{width:100%;min-height:56px;border-radius:12px!important;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.woocommerce-checkout .form-row{margin-bottom:14px!important}
.woocommerce-checkout .form-row label{display:block;margin-bottom:7px;font-size:.76rem;font-weight:800;letter-spacing:.035em;color:#343a35}
.woocommerce-checkout .form-row .required{color:#73825e}
.woocommerce-checkout .select2-container .select2-selection--single{height:50px!important;padding:9px 11px!important}
.woocommerce-checkout .select2-selection__rendered{line-height:30px!important}
.woocommerce-checkout .select2-selection__arrow{height:48px!important}
.vt-customer-type>span{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.vt-customer-type label.radio{display:flex!important;align-items:center;gap:9px;margin:0!important;padding:14px;border:1px solid #d9dcd6;border-radius:12px;background:#fafaf7;font-size:.86rem!important;cursor:pointer}
.vt-customer-type input{accent-color:#718168}
.vt-company-field{display:none!important}
.vt-company-field.is-visible{display:block!important}
.vt-shipping-explainer{padding:14px 16px;border-left:3px solid #718168;background:#f3f5ee;color:#384039}
.vt-shipping-explainer strong{display:block;margin-bottom:3px;font-size:.82rem}
.vt-shipping-explainer p{margin:0;font-size:.78rem;line-height:1.5}
.woocommerce-checkout-review-order-table .product-name{font-weight:650}
.woocommerce-checkout-review-order-table .product-total{text-align:right}
.woocommerce-checkout-review-order-table tfoot th{font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}
.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout-review-order-table .order-total td{font-size:1.08rem}
.vt-cart-page .cart_totals{position:sticky;top:105px}
.vt-cart-page .wc-proceed-to-checkout a.checkout-button{border-radius:12px!important;min-height:56px;display:flex!important;align-items:center;justify-content:center}
/* WooCommerce Blocks fallback styling */
.wc-block-checkout,.wc-block-cart{max-width:1240px!important;margin-left:auto!important;margin-right:auto!important}
.wc-block-components-sidebar-layout .wc-block-components-main{padding-right:4%!important}
.wc-block-components-sidebar{border:1px solid #dddeda;border-radius:20px;padding:20px!important;background:#fff}
.wc-block-components-button{border-radius:11px!important}
@media(max-width:900px){
 .woocommerce-checkout form.checkout{grid-template-columns:1fr}
 .woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:1}
 .woocommerce-checkout #order_review{position:static}
 .vt-checkout-progress{grid-template-columns:1fr}
 .vt-checkout-progress span{display:none}.vt-checkout-progress .is-active{display:block}
}
@media(max-width:600px){
 .vt-checkout-page .vt-wc-shell{padding-top:12px}
 .vt-checkout-intro{border-radius:17px;padding:25px 20px;margin-bottom:16px}
 .woocommerce-checkout .woocommerce-billing-fields,.woocommerce-checkout .woocommerce-shipping-fields,.woocommerce-checkout .woocommerce-additional-fields,.woocommerce-checkout #order_review{padding:18px!important;border-radius:15px!important}
 .vt-customer-type>span{grid-template-columns:1fr}
 .woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{float:none!important;width:100%!important}
 .wc-block-components-sidebar-layout .wc-block-components-main{padding-right:0!important}
}

/* VT-005A.1 – reliable system page shell */
.vt-system-page{min-height:58vh}
.vt-system-page__header{margin:0 0 28px}
.vt-system-page__header h1{margin:0;font-size:clamp(2rem,4vw,3.5rem);color:#202522}
.vt-system-page__content>.woocommerce{width:100%}
.vt-checkout-page .vt-system-page>.vt-container{width:min(1240px,calc(100% - 40px));margin-inline:auto}
.vt-checkout-page .woocommerce-notices-wrapper{margin-bottom:18px}
.vt-checkout-page .woocommerce-form-login-toggle,
.vt-checkout-page .woocommerce-form-coupon-toggle{margin-bottom:14px}
.vt-standard-page{padding:clamp(80px,10vw,150px) 0}
.vt-page-article{max-width:1000px;margin:0 auto}
.vt-page-article__header h1{font-size:clamp(2.4rem,6vw,5rem);margin:0 0 28px}
@media(max-width:600px){
 .vt-checkout-page .vt-system-page>.vt-container{width:min(100% - 24px,1240px)}
}

/* VT-005A.2 – Slovak checkout polish */
.vt-checkout-page .woocommerce-form-coupon-toggle{border-top:2px solid var(--vt-color-secondary,#718168);padding:14px 16px;background:#f7f7f2;border-radius:10px;margin-bottom:22px}
.vt-checkout-page .woocommerce-info{border-top-color:#718168!important;background:#f7f7f2!important;color:#4b554c!important}
.vt-checkout-page .woocommerce-info::before{color:#718168!important}
.vt-checkout-page .woocommerce-form-coupon{border:1px solid #dedfd8!important;border-radius:14px!important;padding:18px!important;background:#fff!important}
.vt-checkout-page .woocommerce-form-coupon .form-row-first{width:68%!important}
.vt-checkout-page .woocommerce-form-coupon .form-row-last{width:30%!important}
.vt-checkout-page .woocommerce-form-coupon button{width:100%;min-height:48px;border-radius:10px!important;white-space:nowrap}

/* Customer type as real selectable cards. */
.vt-customer-type .woocommerce-input-wrapper{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:relative}
.vt-customer-type .woocommerce-input-wrapper>input[type="radio"]{position:absolute!important;opacity:0!important;pointer-events:none!important}
.vt-customer-type .woocommerce-input-wrapper>label.radio{display:flex!important;align-items:center!important;justify-content:center!important;min-height:54px;margin:0!important;padding:14px 16px!important;border:1px solid #d8dbd4!important;border-radius:12px!important;background:#fafaf7!important;font-size:.88rem!important;font-weight:750!important;cursor:pointer!important;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease!important}
.vt-customer-type .woocommerce-input-wrapper>input[type="radio"]:checked+label.radio{border-color:#718168!important;background:#eef2e7!important;box-shadow:0 0 0 2px rgba(113,129,104,.12)!important;color:#263126!important}
.vt-customer-type .woocommerce-input-wrapper>label.radio:hover{border-color:#98a28d!important}

/* More compact order review with product image. */
.vt-checkout-product{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;align-items:center}
.vt-checkout-product-thumb{width:56px!important;height:56px!important;object-fit:contain!important;border:1px solid #e1e2dc;border-radius:9px;background:#f8f8f5}
.vt-checkout-product__name{line-height:1.35}
.woocommerce-checkout-review-order-table{border-collapse:separate!important;border-spacing:0!important;overflow:hidden;border:1px solid #e0e1db!important;border-radius:14px!important}
.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{padding:14px 12px!important;border-color:#e7e7e1!important}
.woocommerce-checkout-review-order-table thead th{background:#f6f6f2!important}
.woocommerce-checkout-review-order-table .cart-subtotal th,
.woocommerce-checkout-review-order-table .shipping th,
.woocommerce-checkout-review-order-table .order-total th{padding-left:14px!important}

/* Payment presentation. */
.vt-checkout-page #payment{background:#f7f7f3!important;border:1px solid #e0e1da!important;border-radius:15px!important;overflow:hidden}
.vt-checkout-page #payment ul.payment_methods{background:#fff!important}
.vt-checkout-page #payment li.wc_payment_method>label{font-weight:800;color:#28302a}
.vt-checkout-page #payment div.payment_box{background:#eef1e9!important;color:#4d574d!important;border-radius:10px!important;margin-top:12px!important}
.vt-checkout-page #payment div.payment_box::before{border-bottom-color:#eef1e9!important}
.vt-checkout-page .woocommerce-privacy-policy-text{font-size:.83rem;line-height:1.65;color:#626a63}
.vt-checkout-page .woocommerce-privacy-policy-text a{color:#65754f;text-decoration:underline;text-underline-offset:2px}
.vt-checkout-page #place_order{background:#718168!important;color:#fff!important;border:0!important;box-shadow:none!important}
.vt-checkout-page #place_order:hover{background:#5f6f56!important}

/* Prevent third-party coupon CTA from looking foreign. */
.vt-checkout-page button[class*="coupon"],
.vt-checkout-page a[class*="coupon"]{border-color:#cfd4c8!important;color:#3f4b40!important;border-radius:10px!important;background:#fff!important}

@media(max-width:900px){
 .vt-checkout-product{grid-template-columns:46px minmax(0,1fr)}
 .vt-checkout-product-thumb{width:46px!important;height:46px!important}
}
@media(max-width:600px){
 .vt-customer-type .woocommerce-input-wrapper{grid-template-columns:1fr}
 .vt-checkout-page .woocommerce-form-coupon .form-row-first,
 .vt-checkout-page .woocommerce-form-coupon .form-row-last{float:none!important;width:100%!important}
}

/* VT-005A.3 – stable two-column checkout structure */
.vt-checkout-page .vt-breadcrumbs{display:none!important}
.vt-checkout-page .vt-wc-shell{overflow:visible}
.vt-checkout-page .vt-system-page__content,
.vt-checkout-page .woocommerce,
.vt-checkout-page form.checkout{min-width:0}
.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)!important;
  gap:48px!important;
  align-items:start!important;
}
.woocommerce-checkout form.checkout>#customer_details{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
}
.woocommerce-checkout form.checkout>.vt-order-review-column{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  align-self:start!important;
  position:sticky!important;
  top:112px!important;
}
.woocommerce-checkout .vt-order-review-column>#order_review_heading{
  margin:0 0 16px!important;
  padding:0!important;
  font-size:1.25rem!important;
}
.woocommerce-checkout .vt-order-review-column>#order_review{
  position:static!important;
  top:auto!important;
  width:100%!important;
  margin:0!important;
}
.woocommerce-checkout #customer_details{align-self:start!important}
.vt-checkout-page .woocommerce-checkout .form-row.mailpoet-subscription-section,
.vt-checkout-page .woocommerce-checkout .woocommerce-mailchimp-opt-in,
.vt-checkout-page .woocommerce-checkout .mailpoet_woocommerce_checkout_optin_present{
  margin-top:8px!important;
  padding-top:4px!important;
}
.vt-checkout-page .woocommerce-checkout .form-row.mailpoet-subscription-section label,
.vt-checkout-page .woocommerce-checkout .woocommerce-mailchimp-opt-in label{
  font-size:.84rem!important;
  font-weight:500!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
@media(max-width:1024px){
  .woocommerce-checkout form.checkout{gap:28px!important;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr)!important}
}
@media(max-width:900px){
  .woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
  .woocommerce-checkout form.checkout>#customer_details,
  .woocommerce-checkout form.checkout>.vt-order-review-column{grid-column:1!important;grid-row:auto!important}
  .woocommerce-checkout form.checkout>.vt-order-review-column{position:static!important;top:auto!important}
}

/* VT-005B – payment gateway compatibility */
.vt-payment-intro{display:flex;gap:10px;flex-direction:column;padding:16px 18px;margin:0 0 14px;border:1px solid rgba(107,125,79,.28);border-radius:14px;background:#f3f6ee;color:#27302a}
.vt-payment-intro strong{font-size:15px}.vt-payment-intro span{font-size:13px;line-height:1.55;color:#667067}
.woocommerce-checkout #payment ul.payment_methods{padding:0;margin:0;list-style:none;border:0}
.woocommerce-checkout #payment ul.payment_methods>li{margin:0 0 10px;padding:15px 16px;border:1px solid #dedfd8;border-radius:14px;background:#fff}
.woocommerce-checkout #payment ul.payment_methods>li:has(input:checked){border-color:#7b8f59;box-shadow:0 0 0 2px rgba(123,143,89,.12)}
.woocommerce-checkout #payment .payment_box{margin:12px 0 0;padding:15px;border-radius:12px;background:#f3f5ee!important;color:#586159!important}
.woocommerce-checkout #payment label{font-weight:700;display:inline-flex;align-items:center;gap:8px}
.woocommerce-checkout #payment img{max-height:26px;width:auto;vertical-align:middle;margin-left:8px}
.woocommerce-checkout #payment .wc-payment-form{padding:2px 0 0}
.woocommerce-checkout #payment .wc-stripe-elements-field,.woocommerce-checkout #payment .StripeElement,.woocommerce-checkout #payment input[type=text]{min-height:48px;border:1px solid #d8dad2!important;border-radius:10px!important;padding:12px!important;background:#fff!important}
.woocommerce-checkout #payment .payment_method_woocommerce_payments,.woocommerce-checkout #payment .payment_method_stripe,.woocommerce-checkout #payment [class*="payment_method_gopay"]{overflow:hidden}
.woocommerce-checkout #payment .place-order{padding:14px 0 0!important;margin:0!important}
@media(max-width:767px){.vt-payment-intro{padding:14px}.woocommerce-checkout #payment ul.payment_methods>li{padding:13px}}

/* VT-005B.1 – offline payment workflow */
.vt-offline-payment-checkout #payment .payment_methods li.wc_payment_method{position:relative;padding:16px 18px!important}
.vt-offline-payment-checkout #payment .payment_methods li.wc_payment_method>label{display:flex;align-items:center;gap:10px;cursor:pointer}
.vt-offline-payment-checkout #payment .payment_methods li.wc_payment_method>label:before{content:"";width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#eef2e8 center/18px no-repeat}
.vt-offline-payment-checkout #payment .payment_method_vt_proforma>label:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236b7d4f' stroke-width='1.8'%3E%3Cpath d='M6 2h9l3 3v17H6z'/%3E%3Cpath d='M14 2v4h4M9 11h6M9 15h6M9 19h4'/%3E%3C/svg%3E")}
.vt-offline-payment-checkout #payment .payment_method_vt_store_payment>label:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236b7d4f' stroke-width='1.8'%3E%3Cpath d='M3 10h18M5 10v10h14V10M4 4h16l1 6H3z'/%3E%3Cpath d='M9 14h6'/%3E%3C/svg%3E")}
.vt-offline-payment-checkout #payment .payment_method_vt_approved_invoice>label:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236b7d4f' stroke-width='1.8'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 9h18M7 15h4'/%3E%3C/svg%3E")}
.vt-offline-payment-checkout #payment .payment_box{margin:14px 0 0 44px!important;padding:14px 16px!important;border-radius:10px!important;background:#f5f6f2!important;color:#5f675f!important;font-size:13px!important}
.vt-offline-payment-checkout #payment .payment_box:before{display:none!important}
@media(max-width:600px){.vt-offline-payment-checkout #payment .payment_box{margin-left:0!important}}
