/* Contact + checkout widgets. Uses only the existing SHUDDHY design tokens. */
.contact-widget-grid,.contact-top-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px;padding-bottom:28px}
.contact-widget-card{min-width:0;margin:0;border:0;border-radius:var(--radius);background:var(--surface);padding:38px;box-sizing:border-box}
.contact-merged-card{display:flex;flex-direction:column;justify-content:space-between}
.contact-card-header{margin-bottom:12px}
.contact-card-header h2{margin-top:4px;font-size:clamp(1.5rem,2vw,2.2rem)}
.contact-card-section{display:flex;flex-direction:column;gap:10px}
.contact-card-section h2{font-size:clamp(1.4rem,1.8vw,2rem);margin:6px 0 0}
.contact-card-section h2 a{display:inline-flex;align-items:center;min-height:44px;color:var(--fg);text-decoration-thickness:1px;text-underline-offset:4px}
.contact-card-section p{margin:4px 0 0;color:var(--muted);font-size:0.95rem}
.whatsapp-action-row{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:6px}
.copy-buttons-group{display:flex;flex-wrap:wrap;gap:10px}
.policy-links-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px 16px}
.policy-links-list a{display:flex;align-items:center;min-height:44px;border-top:1px solid var(--border);font-weight:700;font-size:0.95rem;color:var(--fg);text-underline-offset:4px}
.form-row-2col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.product-help-inline legend{font-family:var(--display);font-size:1.35rem;font-weight:700;padding:0;margin-bottom:12px;color:var(--fg)}
.product-help-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.product-help-options label{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border:1px solid var(--border);border-radius:999px;background:var(--bg);cursor:pointer;font-weight:700;font-size:0.9rem}
.product-help-options input{width:20px;height:20px;min-height:0;accent-color:var(--accent)}
.contact-sub-block>span:first-child,.contact-widget-card>span:first-child,.widget-label,.checkout-products-label{display:block;color:var(--muted);font-size:.8rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.contact-sub-block h2,.contact-widget-card h2{margin-top:auto;font-size:clamp(1.65rem,2.2vw,2.8rem);overflow-wrap:anywhere}
.contact-sub-block h2 a,.contact-widget-card h2 a{text-decoration-thickness:1px;text-underline-offset:5px}
.contact-sub-block p,.contact-widget-card p{margin:14px 0 0;color:var(--muted)}
.contact-card-divider{border:0;border-top:1px solid var(--border);margin:20px 0}
.contact-widget-card[data-widget="tap-to-email-card"]{min-height:260px;display:flex;flex-direction:column;justify-content:flex-end}
.contact-widget-card[data-widget="whatsapp-button"]{min-height:260px;display:flex;align-items:flex-start;flex-direction:column;justify-content:flex-end}
.contact-widget-card[data-widget="whatsapp-button"] .button{margin-bottom:auto}
.contact-number{margin-top:0;font-size:1.08rem;font-weight:750;letter-spacing:.04em}
.product-help h2{font-size:clamp(1.65rem,2.2vw,2.8rem)}
.product-help textarea{width:100%;min-height:98px;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit;resize:vertical}
.contact-utility-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;padding-top:28px}
.copy-contact{display:grid;align-content:start;gap:10px}
.text-action{min-height:48px;padding:0 18px;border:1px solid var(--deep);border-radius:999px;background:var(--surface);color:var(--deep);font:inherit;font-weight:750;text-align:left;cursor:pointer}
.text-action:hover,.text-action:focus-visible{background:var(--deep);color:var(--white)}
.copy-status{min-height:1.55em}
.policy-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}
.policy-shortcuts h2{grid-column:1/-1;margin:0 0 18px}
.policy-shortcuts a,.policy-shortcuts span{display:flex;align-items:center;min-height:48px;border-top:1px solid var(--border);font-weight:700;text-underline-offset:4px}
.policy-shortcuts span[aria-disabled="true"]{color:var(--muted)}
.contact-form-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,8vw,120px);align-items:start}
.contact-form-section>div p:last-child{max-width:42ch;color:var(--muted)}
.contact-form-section form{display:grid;gap:16px;padding:38px;border-radius:var(--radius);background:var(--surface)}
.contact-form-merged-box{display:grid;gap:24px;padding:38px;border-radius:var(--radius);background:var(--surface)}
.contact-form-merged-box form{display:grid;gap:16px;padding:0;border-radius:0;background:transparent}
.product-help-inline{border:0;padding:0 0 20px;margin:0 0 16px;border-bottom:1px solid var(--border)}
.contact-form-section label{display:grid;gap:7px;font-weight:700}
.contact-form-section input,.contact-form-section textarea{width:100%;padding:14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit}
.contact-bottom-sheet{position:static;width:var(--shell);margin:0 auto 64px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow)}
.contact-bottom-sheet summary{display:flex;align-items:center;min-height:56px;padding:0 22px;cursor:pointer;font-weight:750;list-style:none}
.contact-bottom-sheet summary::-webkit-details-marker{display:none}
.contact-bottom-sheet summary::after{content:"+";margin-left:auto;font-size:1.4rem;font-weight:400}
.contact-bottom-sheet[open] summary::after{content:"−"}
.contact-bottom-sheet div{display:grid;padding:0 22px 18px}
.contact-bottom-sheet a{display:flex;align-items:center;min-height:48px;border-top:1px solid var(--border);font-weight:700;text-underline-offset:4px}
.checkout-stepper{padding:28px 0}
.checkout-stepper ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.checkout-stepper li{position:relative;display:flex;align-items:center;gap:12px;color:var(--muted)}
.checkout-stepper li:not(:last-child)::after{content:"";height:1px;flex:1;margin:0 16px;background:var(--border)}
.checkout-stepper li>span{display:grid;place-items:center;width:40px;height:40px;aspect-ratio:1/1;flex:0 0 40px;border:1px solid var(--border);border-radius:50%;background:var(--surface);font-weight:750;box-sizing:border-box;place-self:center}
.checkout-stepper li.is-current{color:var(--fg)}
.checkout-stepper li.is-current>span,.checkout-stepper li.is-complete>span{border-color:var(--deep);background:var(--deep);color:var(--white)}
.checkout-summary-panel{border-radius:var(--radius);background:var(--surface);padding:0 24px 24px}
.checkout-summary-panel>summary{display:flex;align-items:center;min-height:76px;cursor:pointer;font-family:var(--display);font-size:2.2rem;list-style:none}
.checkout-summary-panel>summary::-webkit-details-marker{display:none}
.checkout-summary-panel>summary::after{content:"+";margin-left:auto;font-family:var(--body);font-size:1.5rem}
.checkout-summary-panel[open]>summary::after{content:"−"}
.checkout-products-label{padding:0 0 14px}
.checkout-cart-widget>.widget-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.checkout-line[data-widget-line]{grid-template-columns:110px minmax(0,1fr) auto}
.checkout-widget-controls{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:0}
.checkout-line .checkout-widget-controls .remove-item{grid-column:auto;justify-self:auto;align-self:flex-end;min-height:44px}
.quantity-control{display:grid;grid-template-columns:44px minmax(36px,auto) 44px;align-items:center;border:1px solid var(--border);border-radius:999px;overflow:hidden}
.quantity-control button{width:44px;height:44px;border:0;background:var(--surface);color:var(--fg);cursor:pointer;font-size:1.2rem}
.quantity-control button:hover,.quantity-control button:focus-visible{background:var(--bg)}
.quantity-control button:disabled{color:var(--muted);cursor:not-allowed;opacity:.55}
.quantity-control output{text-align:center;font-weight:750}
.checkout-line .remove-item{color:var(--fg)}
.widget-toast{position:fixed;left:50%;bottom:84px;z-index:150;transform:translateX(-50%);width:max-content;display:flex;align-items:center;gap:16px;max-width:calc(100vw - 32px);padding:14px 20px;border-radius:999px;background:var(--deep);color:var(--white);box-shadow:var(--shadow);font-weight:700}
.widget-toast[hidden],.quantity-status[hidden]{display:none}
.widget-toast button{min-width:44px;min-height:36px;border:0;border-radius:999px;background:var(--white);color:var(--deep);font:inherit;font-weight:750;cursor:pointer}
.quantity-status{position:fixed;left:50%;bottom:84px;z-index:150;transform:translateX(-50%);width:max-content;max-width:calc(100vw - 32px);padding:14px 20px;border-radius:999px;background:var(--deep);color:var(--white);box-shadow:var(--shadow);font-weight:700}
.summary-mobile-totals{display:none!important} /* totals sit once, in the Order summary box (review defect D23) */
.address-prompt,.payment-strip{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
.address-prompt h3,.payment-strip h3{font-size:1.35rem}
.address-prompt p,.payment-strip p{margin:8px 0;color:var(--muted);font-size:.9rem}
.address-prompt .button{margin-top:10px}
.payment-strip strong{display:block;margin-top:10px;font-size:1.05rem}
.sticky-order-bar{position:fixed;right:max(16px,calc((100vw - min(94vw,1500px))/2));bottom:16px;z-index:75;display:grid;grid-template-columns:auto auto;align-items:center;gap:0 18px;min-width:320px;padding:12px 14px 12px 20px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow)}
.sticky-order-bar>span{color:var(--muted);font-size:.78rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}
.sticky-order-bar>strong{grid-row:2;font-size:1.2rem}
.sticky-order-bar .button{grid-column:2;grid-row:1/3}
.checkout-widgets-page:not(.no-js) .sticky-order-bar:not(.is-ready){display:none}
.checkout-disconnected:empty{display:none}
.checkout-widgets-page [hidden],.checkout-disconnected [hidden]{display:none!important}
@media(max-width:780px){
  .contact-widget-grid,.contact-top-grid{grid-template-columns:1fr;gap:16px}
  .contact-utility-grid,.contact-form-section{grid-template-columns:1fr;gap:24px}
  .form-row-2col{grid-template-columns:1fr}
  .checkout-stepper li{display:grid;justify-items:center;align-items:center;gap:7px;text-align:center;font-size:.82rem}
  .checkout-stepper li:not(:last-child)::after{position:absolute;left:calc(50% + 32px);top:20px;width:calc(100% - 64px);margin:0}
  .checkout-stepper li>span{z-index:1;width:40px;height:40px;aspect-ratio:1/1;place-self:center}
}
@media(max-width:600px){
  .contact-widget-card,.contact-form-merged-box{padding:24px}
  .policy-shortcuts{grid-template-columns:1fr}
  .contact-form-section form{padding:0}
  .contact-bottom-sheet{right:16px;bottom:10px}
  .checkout-summary-panel{padding:0 16px 16px}
  .checkout-summary-panel>summary{font-size:1.8rem}
  .checkout-line[data-widget-line]{grid-template-columns:82px minmax(0,1fr)}
  .checkout-widget-controls{grid-column:2;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px 14px}
  .checkout-line .checkout-widget-controls .remove-item{align-self:center}
  .sticky-order-bar{right:8px;bottom:8px;left:8px;width:auto;min-width:0;border-radius:var(--radius-sm)}
  .checkout-widgets-page{padding-bottom:90px}
}
@media(max-width:430px){
  .contact-widget-grid,.contact-top-grid,.contact-utility-grid{gap:12px}
  .contact-widget-card,.contact-form-merged-box{padding:20px}
  .product-help-options label{font-size:.85rem;padding:6px 12px}
  .contact-bottom-sheet{right:8px;bottom:8px;width:calc(100vw - 16px)}
  .checkout-stepper li{font-size:.75rem}
  .checkout-stepper li>span{width:36px;height:36px;aspect-ratio:1/1;flex:0 0 36px;place-self:center}
  .checkout-stepper li:not(:last-child)::after{top:18px}
  .checkout-line[data-widget-line]{grid-template-columns:72px minmax(0,1fr)}
  .checkout-line[data-widget-line] img{width:72px;height:90px}
  .sticky-order-bar{grid-template-columns:minmax(0,1fr) auto;gap:0 10px;padding-left:16px}
}
@media(prefers-reduced-motion:reduce){.contact-bottom-sheet,.sticky-order-bar,.widget-toast,.quantity-status{scroll-behavior:auto;transition:none}}

/* ── Site Footer Standard Responsive Styles ─────────────────────────── */
.site-footer {
  background: var(--deep);
  color: var(--surface);
  padding: 60px max(24px, calc((100vw - min(94vw, 1200px)) / 2)) 30px;
}
.site-footer-inner {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 40px;
  max-width: 1200px;
  margin: 0 auto 40px;
}
.footer-col {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.footer-brand img {
  max-height: 48px;
  width: auto;
  display: block;
}
.footer-tagline {
  color: color-mix(in oklch, var(--surface) 80%, transparent);
  font-size: 0.95rem;
  margin: 0;
}
.footer-address {
  font-style: normal;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 4px;
}
.footer-address a {
  color: var(--surface);
  text-decoration: none;
  font-size: 0.92rem;
  opacity: 0.85;
}
.footer-address a:hover {
  opacity: 1;
  text-decoration: underline;
}
.footer-heading {
  font-family:var(--display);
  font-size: 1.15rem;
  font-weight: 500;
  color: var(--surface);
  margin: 0 0 4px;
  letter-spacing: 0.02em;
}
.footer-col nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-col nav a {
  color: var(--surface);
  text-decoration: none;
  font-size: 0.92rem;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  opacity: 0.85;
}
.footer-col nav a:hover {
  opacity: 1;
  text-decoration: underline;
}
.footer-bottom {
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 24px;
  border-top: 1px solid color-mix(in oklch, var(--surface) 15%, transparent);
  text-align: center;
}
.footer-bottom small {
  color: color-mix(in oklch, var(--surface) 75%, transparent);
  font-size: 0.82rem;
}

@media (max-width: 780px) {
  .site-footer {
    padding-top: 48px;
    padding-bottom: 30px;
  }
  .site-footer-inner {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }
  .footer-brand-col {
    grid-column: 1 / -1;
  }
}
@media (max-width: 480px) {
  .site-footer-inner {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .footer-brand-col {
    grid-column: 1;
  }
  .footer-col nav a {
    min-height: 40px;
  }
}
.has-home-widget-dock .site-footer,
.has-shop-widget-dock .site-footer {
  padding-bottom: 120px;
}


/* Promo code uses Vendure's real apply/remove coupon mutations. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.coupon-panel{margin:18px 0;padding:18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.coupon-panel h3{margin:0 0 10px;font-size:1.15rem}.coupon-panel form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.coupon-panel input{min-width:0;min-height:48px;padding:0 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--fg);font:inherit;text-transform:uppercase}.coupon-panel .button{min-height:48px}.coupon-status{margin:9px 2px 0!important;font-size:.85rem!important;color:var(--accent)!important}.coupon-status.is-error{color:var(--fg)!important}.applied-coupons{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.applied-coupons>span{display:inline-flex;align-items:center;gap:8px;padding:6px 7px 6px 11px;border-radius:999px;background:var(--surface);font-size:.78rem;font-weight:800;letter-spacing:.04em}.applied-coupons button{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--fg);font:700 .72rem var(--body);cursor:pointer}
@media(max-width:430px){.coupon-panel form{grid-template-columns:1fr}.coupon-panel .button{width:100%}}


/* ---------- Checkout summary: delivery, discounts, payment choice, form (build of 6 Oct 2026) ---------- */
.summary-rows{display:block}
.order-summary>p,.summary-rows>p{margin:0}
.summary-rows>p{display:flex;justify-content:space-between;gap:25px;padding:16px 0;border-top:1px solid var(--border)}
.summary-rows>p strong,.order-summary>p strong{flex:none;white-space:nowrap}
.summary-rows>p span,.order-summary>p span{min-width:0;overflow-wrap:anywhere}
.summary-rows>p.discount-row strong{color:var(--accent)}
.summary-rows>p.discount-row .discount-names{display:block;font-size:.82em;opacity:.75;margin-top:2px}
.cart-savings strong{color:var(--accent)}
.order-summary>p.delivery-note{display:block;border-top:0;padding:0 0 14px;color:var(--muted);font-size:.86rem}
.order-summary>p.order-total{font-size:1.15rem}
.order-summary>p.order-total strong{font-size:1.4rem}
.summary-note[hidden]{display:none}
.payment-strip[hidden],.coupon-panel[hidden]{display:none}
.payment-options{margin:12px 0 0;padding:0;border:0;display:grid;gap:10px;min-width:0}
.payment-option{display:flex;align-items:flex-start;gap:12px;min-height:56px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer}
.payment-option:has(input:checked){border-color:var(--deep);background:var(--surface);box-shadow:inset 0 0 0 1px var(--deep)}
.payment-option input{flex:0 0 20px;width:20px;height:20px;min-height:0;margin:2px 0 0;accent-color:var(--deep)}
.payment-option span{display:grid;gap:2px;min-width:0}
.payment-option strong{display:block;margin:0;font-size:1rem}
.payment-option small{color:var(--muted);font-size:.85rem}
.payment-strip .payment-option strong{margin-top:0}
.cod-form input,.cod-form textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--fg);font:inherit;font-size:1rem}
.cod-form textarea{min-height:84px}
.cod-form input[aria-invalid="true"],.cod-form textarea[aria-invalid="true"]{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}
.cod-form .field-error{color:var(--fg);font-size:.85rem;font-weight:700}
.cod-form .cod-status.is-error{color:var(--fg);font-weight:700}
.cod-form .cod-row>label{min-width:0}
.cod-done{margin-top:24px;padding:24px;border-radius:var(--radius-sm);background:var(--bg)}
.cod-done:focus{outline:3px solid var(--accent);outline-offset:4px}
.cod-done h2{font-size:clamp(1.7rem,3vw,2.2rem);margin:0 0 12px}
.cod-done p{margin:8px 0 0}
.coupon-panel input{font-size:1rem}
@media(max-width:600px){
  .order-summary>p,.summary-rows>p{flex-direction:row;align-items:baseline;gap:16px}
  .order-summary>p.delivery-note{flex-direction:column}
}

/* ---------- Policy pages and the 404 page ---------- */
.policy-hero{min-height:0}
.policy-hero.page-hero.plain{min-height:300px}
.policy-hero.page-hero.plain>div{min-height:300px}
.policy-hero h1{font-size:clamp(2.4rem,5vw,4rem)}
.policy-body{max-width:860px;padding:64px 0 24px}
.policy-body h2{margin:44px 0 12px;font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.15}
.policy-body h2:first-child{margin-top:0}
.policy-body p,.policy-body li{max-width:70ch;color:var(--fg);font-size:1.02rem;line-height:1.7}
.policy-body p{margin:0 0 14px}
.policy-body ul{margin:0 0 14px;padding-left:1.2rem;display:grid;gap:6px}
.policy-body a{text-underline-offset:4px;font-weight:700}
.policy-nav{padding:24px 0 80px}
.policy-nav h2{font-size:1.4rem;margin-bottom:14px}
.policy-nav div{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 24px}
.policy-nav a{display:flex;align-items:center;min-height:48px;border-top:1px solid var(--border);font-weight:700;text-underline-offset:4px}
.notfound{padding:72px 0 96px;text-align:center}
.notfound .big-code{display:block;font-family:var(--display);font-size:clamp(5rem,16vw,10rem);line-height:1;color:var(--accent)}
.notfound h1{font-size:clamp(2.2rem,5vw,3.6rem);margin:8px 0 16px}
.notfound p{margin:0 auto 28px;max-width:46ch;color:var(--muted)}
.notfound .not-found-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.notfound .not-found-links{margin-top:36px;display:flex;flex-wrap:wrap;justify-content:center;gap:0 24px}
.notfound .not-found-links a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-underline-offset:4px}

.cod-form{margin-top:22px;padding-top:22px;border-top:1px solid var(--border)}
.cod-form h2{font-size:clamp(1.5rem,2.4vw,1.9rem);margin:0 0 6px}

/* cycle 18 (9 Oct 2026): on a wide screen the three steps were spread edge to edge and sat on the left; centre them as one group. */
@media(min-width:781px){
  .checkout-stepper ol{display:flex;justify-content:center;align-items:center;margin-left:auto;margin-right:auto}
  .checkout-stepper li{flex:0 0 auto}
  .checkout-stepper li:not(:last-child)::after{flex:0 0 clamp(56px,9vw,140px);margin:0 18px}
}

/* cycle 18 (9 Oct 2026): "Complete the ritual" offer on the checkout page. It shows whenever the basket has fewer than all three blends
   (the normal case), and until now it was an unstyled grid item: a grey browser button, and it pushed the Order summary and the
   delivery form down under the items in the wrong column. It now sits under the items and the summary keeps its own column. */
.checkout-layout > .combo-widget[data-combo-context="cart"]{margin:0;padding:16px 18px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}
.checkout-layout > .combo-widget p{margin:0 0 12px;max-width:none;font-size:.95rem;line-height:1.45;color:var(--fg)}
.checkout-layout > .combo-widget .combo-cta{min-height:44px;padding:0 20px;border:1px solid var(--deep);border-radius:999px;background:var(--deep);color:var(--white);font:inherit;font-weight:700;cursor:pointer}
.checkout-layout > .combo-widget .combo-cta:hover,.checkout-layout > .combo-widget .combo-cta:focus-visible{background:var(--action,var(--deep));border-color:var(--action,var(--deep))}
@media(min-width:781px){
  .checkout-layout{grid-template-rows:auto 1fr;row-gap:24px}
  .checkout-layout > div:first-child{grid-column:1;grid-row:1}
  .checkout-layout > .combo-widget[data-combo-context="cart"]{grid-column:1;grid-row:2}
  .checkout-layout > aside.order-summary{grid-column:2;grid-row:1 / span 2}
}

/* ===== CYCLE18-V2 (checkout only) ===== */
/* Empty cart: the sticky "Order total Rs 0 / Continue" bar has nothing to continue to, so it hides until something is in the cart. */
.checkout-widgets-page:has(#cod-empty-note:not([hidden])) .sticky-order-bar{display:none!important}
/* The closed "Product price reference" fold (no marker, bold orphan label, repeats prices shown above) is only a no-script fallback. */
.checkout-widgets-page:not(.no-js) .catalog-reference{display:none}
/* ===== /CYCLE18-V2 ===== */

/* cycle 18 (9 Oct 2026): every field keeps one permanent message line so an error appearing or clearing never moves the Pay button
   (V2 found the first tap on the button missed when the red message pushed it down). */
.cod-form{gap:.35rem}
.cod-form .field-error{display:block;min-height:1.15rem;margin:0;line-height:1.15rem}
