/* ==========================================================================
   Encore Luxe × Hyvä Checkout — boutique override
   Tokens: ink #191714 · cream #fffaf0 · gold #b49766 · paper #f3ede3
   High-specificity body.checkout-* + !important so Magewire/Alpine cannot
   re-skin to stock Hyvä grey/blue/rounded.
   ========================================================================== */

:root {
  --el-ink: #191714;
  --el-ink-soft: #292621;
  --el-cream: #fffaf0;
  --el-paper: #f3ede3;
  --el-gold: #b49766;
  --el-gold-soft: #d1b77d;
  --el-sand: #d7c9b5;
  --el-muted: #736b61;
  --el-muted-ink: #4a453f;
  --el-oxblood: #681e2c;
  --el-line: rgba(25, 23, 20, 0.18);
  --el-line-strong: rgba(25, 23, 20, 0.28);
  --el-line-soft: rgba(25, 23, 20, 0.10);
  --el-footer: #100f0d;
  --el-cream-hover: #ddc89f;
  --el-serif: Italiana, "Times New Roman", Times, serif;
  --el-sans: "DM Sans", system-ui, -apple-system, sans-serif;
}

/* --------------------------------------------------------------------------
   Page canvas — kill Hyvä grey/white body
   -------------------------------------------------------------------------- */
body.checkout-index-index,
body.checkout-default,
body.checkout-index-index.checkout-default,
html body.checkout-index-index,
html body.checkout-default {
  background: var(--el-paper) !important;
  background-color: var(--el-paper) !important;
  color: var(--el-ink) !important;
  font-family: var(--el-sans) !important;
}

body.checkout-index-index #maincontent,
body.checkout-default #maincontent,
body.checkout-index-index .page-main,
body.checkout-default .page-main,
body.checkout-index-index .columns,
body.checkout-default .columns {
  background: transparent !important;
  color: var(--el-ink) !important;
}

body.checkout-index-index .page-wrapper,
body.checkout-default .page-wrapper {
  background: var(--el-paper) !important;
}

/* --------------------------------------------------------------------------
   Site header on checkout — ink bar, cream type
   -------------------------------------------------------------------------- */
body.checkout-index-index #header,
body.checkout-default #header,
body.checkout-index-index header.page-header,
body.checkout-default header.page-header,
body.checkout-index-index .page-header,
body.checkout-default .page-header {
  background: var(--el-ink) !important;
  background-color: var(--el-ink) !important;
  color: var(--el-cream) !important;
  border-color: var(--el-ink) !important;
  border-bottom: 1px solid var(--el-ink-soft) !important;
  box-shadow: none !important;
}

body.checkout-index-index #header a,
body.checkout-default #header a,
body.checkout-index-index .page-header a,
body.checkout-default .page-header a {
  color: var(--el-cream) !important;
}

body.checkout-index-index #header a:hover,
body.checkout-default #header a:hover {
  color: var(--el-gold) !important;
}

/* --------------------------------------------------------------------------
   Hyvä checkout shell
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main,
body.checkout-default #hyva-checkout-main,
#hyva-checkout-main {
  width: min(78rem, calc(100% - 2rem)) !important;
  margin: 1.75rem auto 4rem !important;
  color: var(--el-ink) !important;
  background: transparent !important;
  font-family: var(--el-sans) !important;
}

body.checkout-index-index #hyva-checkout-container,
body.checkout-default #hyva-checkout-container,
#hyva-checkout-container {
  background: transparent !important;
  color: var(--el-ink) !important;
}

/* Kill stock white / gray utility backgrounds inside checkout */
body.checkout-index-index #hyva-checkout-main .bg-white,
body.checkout-index-index #hyva-checkout-main [class*="bg-white"],
body.checkout-index-index #hyva-checkout-main .bg-container,
body.checkout-index-index #hyva-checkout-main .bg-container-lighter,
body.checkout-index-index #hyva-checkout-main .bg-gray-50,
body.checkout-index-index #hyva-checkout-main .bg-gray-100,
body.checkout-index-index #hyva-checkout-main .bg-slate-50,
body.checkout-index-index #hyva-checkout-main .bg-slate-100,
body.checkout-index-index #hyva-checkout-main .bg-neutral-50,
body.checkout-index-index #hyva-checkout-main .bg-neutral-100,
body.checkout-index-index #hyva-checkout-main .bg-zinc-50,
body.checkout-index-index #hyva-checkout-main .bg-stone-50,
body.checkout-index-index #hyva-checkout-main [class*="bg-gray"],
body.checkout-index-index #hyva-checkout-main [class*="bg-slate"],
body.checkout-index-index #hyva-checkout-main [class*="bg-blue"],
body.checkout-index-index #hyva-checkout-main [class*="bg-sky"],
body.checkout-index-index #hyva-checkout-main [class*="bg-indigo"],
body.checkout-default #hyva-checkout-main .bg-white,
body.checkout-default #hyva-checkout-main [class*="bg-white"],
body.checkout-default #hyva-checkout-main .bg-container,
body.checkout-default #hyva-checkout-main .bg-container-lighter {
  background: var(--el-cream) !important;
  background-color: var(--el-cream) !important;
  color: var(--el-ink) !important;
}

/* Kill blue primary fills from Hyvä / Tailwind */
body.checkout-index-index #hyva-checkout-main .bg-primary,
body.checkout-index-index #hyva-checkout-main [class*="bg-primary"],
body.checkout-index-index #hyva-checkout-main .bg-blue-500,
body.checkout-index-index #hyva-checkout-main .bg-blue-600,
body.checkout-index-index #hyva-checkout-main .bg-sky-500,
body.checkout-index-index #hyva-checkout-main .text-primary,
body.checkout-index-index #hyva-checkout-main .border-primary,
body.checkout-default #hyva-checkout-main .bg-primary,
body.checkout-default #hyva-checkout-main [class*="bg-primary"] {
  background-color: transparent !important;
  color: var(--el-ink) !important;
  border-color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main .bg-primary.bg-opacity-10,
body.checkout-index-index #hyva-checkout-main [class*="bg-primary"][class*="opacity"],
body.checkout-index-index #hyva-checkout-main .active.bg-primary,
body.checkout-index-index #hyva-checkout-main .active[class*="bg-primary"] {
  background: rgba(180, 151, 102, 0.12) !important;
  background-color: rgba(180, 151, 102, 0.12) !important;
  border-color: var(--el-gold) !important;
  color: var(--el-ink) !important;
}

/* Grey text → ink / muted */
body.checkout-index-index #hyva-checkout-main .text-gray-400,
body.checkout-index-index #hyva-checkout-main .text-gray-500,
body.checkout-index-index #hyva-checkout-main .text-gray-600,
body.checkout-index-index #hyva-checkout-main .text-gray-700,
body.checkout-index-index #hyva-checkout-main .text-gray-800,
body.checkout-index-index #hyva-checkout-main .text-slate-400,
body.checkout-index-index #hyva-checkout-main .text-slate-500,
body.checkout-index-index #hyva-checkout-main .text-slate-600,
body.checkout-index-index #hyva-checkout-main .text-slate-700,
body.checkout-index-index #hyva-checkout-main .text-slate-800,
body.checkout-index-index #hyva-checkout-main [class*="text-gray"],
body.checkout-index-index #hyva-checkout-main [class*="text-slate"] {
  color: var(--el-muted-ink) !important;
}

body.checkout-index-index #hyva-checkout-main .text-black,
body.checkout-index-index #hyva-checkout-main .text-gray-900,
body.checkout-index-index #hyva-checkout-main .text-slate-900 {
  color: var(--el-ink) !important;
}

/* Grey borders → ink hairlines; square corners */
body.checkout-index-index #hyva-checkout-main .border,
body.checkout-index-index #hyva-checkout-main .border-2,
body.checkout-index-index #hyva-checkout-main [class*="border-gray"],
body.checkout-index-index #hyva-checkout-main [class*="border-slate"],
body.checkout-index-index #hyva-checkout-main [class*="border-container"],
body.checkout-index-index #hyva-checkout-main .border-container-lighter {
  border-color: var(--el-line) !important;
}

body.checkout-index-index #hyva-checkout-main .rounded,
body.checkout-index-index #hyva-checkout-main .rounded-md,
body.checkout-index-index #hyva-checkout-main .rounded-lg,
body.checkout-index-index #hyva-checkout-main .rounded-xl,
body.checkout-index-index #hyva-checkout-main .rounded-2xl,
body.checkout-index-index #hyva-checkout-main .rounded-full,
body.checkout-index-index #hyva-checkout-main [class*="rounded"] {
  border-radius: 0 !important;
}

body.checkout-index-index #hyva-checkout-main .shadow,
body.checkout-index-index #hyva-checkout-main .shadow-sm,
body.checkout-index-index #hyva-checkout-main .shadow-md,
body.checkout-index-index #hyva-checkout-main .shadow-lg,
body.checkout-index-index #hyva-checkout-main [class*="shadow"] {
  box-shadow: none !important;
}

/* --------------------------------------------------------------------------
   Breadcrumbs / step nav
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main nav,
body.checkout-index-index #hyva-checkout-main .breadcrumbs,
body.checkout-index-index #hyva-checkout-main [class*="breadcrumb"] {
  color: var(--el-muted) !important;
  margin-bottom: 1.25rem !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

body.checkout-index-index #hyva-checkout-main nav a,
body.checkout-index-index #hyva-checkout-main .breadcrumbs a {
  color: var(--el-muted-ink) !important;
  text-decoration: none !important;
}

body.checkout-index-index #hyva-checkout-main nav a:hover,
body.checkout-index-index #hyva-checkout-main .breadcrumbs a:hover {
  color: var(--el-gold) !important;
}

body.checkout-index-index #hyva-checkout-main .breadcrumbs [aria-current],
body.checkout-index-index #hyva-checkout-main .breadcrumbs .active,
body.checkout-index-index #hyva-checkout-main nav [aria-current="step"],
body.checkout-index-index #hyva-checkout-main nav [aria-current="page"] {
  color: var(--el-gold) !important;
}

/* Step indicators / progress */
body.checkout-index-index #hyva-checkout-main [data-role="steps"] li,
body.checkout-index-index #hyva-checkout-main .checkout-steps li {
  color: var(--el-muted) !important;
}

body.checkout-index-index #hyva-checkout-main [data-role="steps"] .active,
body.checkout-index-index #hyva-checkout-main .checkout-steps .active {
  color: var(--el-ink) !important;
  border-color: var(--el-gold) !important;
}

/* --------------------------------------------------------------------------
   Section titles — Italiana display
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main h1,
body.checkout-index-index #hyva-checkout-main h2,
body.checkout-index-index #hyva-checkout-main h3,
body.checkout-index-index #hyva-checkout-main h4,
body.checkout-index-index #hyva-checkout-main legend,
body.checkout-index-index #hyva-checkout-main .title,
body.checkout-index-index #hyva-checkout-main [class*="section-title"],
body.checkout-index-index #hyva-checkout-main .fieldset > legend,
body.checkout-default #hyva-checkout-main h1,
body.checkout-default #hyva-checkout-main h2,
body.checkout-default #hyva-checkout-main h3 {
  color: var(--el-ink) !important;
  font-family: var(--el-serif) !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.15 !important;
}

body.checkout-index-index #hyva-checkout-main h1 {
  font-size: clamp(2rem, 4vw, 2.75rem) !important;
  margin: 0 0 0.75rem !important;
}

body.checkout-index-index #hyva-checkout-main h2 {
  font-size: clamp(1.35rem, 2.5vw, 1.75rem) !important;
  margin: 0 0 0.85rem !important;
  padding-bottom: 0.55rem !important;
  border-bottom: 1px solid var(--el-line) !important;
}

body.checkout-index-index #hyva-checkout-main h3,
body.checkout-index-index #hyva-checkout-main legend {
  font-size: 1.25rem !important;
  margin: 0 0 0.65rem !important;
}

/* Section / column cards */
body.checkout-index-index #hyva-checkout-main .fieldset,
body.checkout-index-index #hyva-checkout-main section,
body.checkout-index-index #hyva-checkout-main [data-role="section"],
body.checkout-index-index #hyva-checkout-main .checkout-section,
body.checkout-index-index #hyva-checkout-main form > .gap-4 > div,
body.checkout-index-index #hyva-checkout-main form > .space-y-4 > div,
body.checkout-index-index #hyva-checkout-main #shipping,
body.checkout-index-index #hyva-checkout-main #payment,
body.checkout-index-index #hyva-checkout-main #customer-email-fieldset,
body.checkout-index-index #hyva-checkout-main [id*="guest-details"],
body.checkout-index-index #hyva-checkout-main [id*="shipping-address"],
body.checkout-index-index #hyva-checkout-main [id*="billing-address"] {
  background: var(--el-cream) !important;
  color: var(--el-ink) !important;
}

/* Soft card framing for major columns */
body.checkout-index-index #hyva-checkout-main #hyva-checkout-container > div,
body.checkout-index-index #hyva-checkout-main .column.main > div {
  gap: 1.25rem !important;
}

body.checkout-index-index #hyva-checkout-main [wire\:id],
body.checkout-index-index #hyva-checkout-main .magewire {
  color: var(--el-ink) !important;
}

/* --------------------------------------------------------------------------
   Labels & guest email / address fields
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main label,
body.checkout-index-index #hyva-checkout-main .label,
body.checkout-index-index #hyva-checkout-main .field > label,
body.checkout-index-index #hyva-checkout-main span.label {
  color: var(--el-ink) !important;
  font-family: var(--el-sans) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 0.35rem !important;
  display: inline-block !important;
}

body.checkout-index-index #hyva-checkout-main label .required,
body.checkout-index-index #hyva-checkout-main .required > em,
body.checkout-index-index #hyva-checkout-main .required:after {
  color: var(--el-oxblood) !important;
}

body.checkout-index-index #hyva-checkout-main input[type="text"],
body.checkout-index-index #hyva-checkout-main input[type="email"],
body.checkout-index-index #hyva-checkout-main input[type="tel"],
body.checkout-index-index #hyva-checkout-main input[type="number"],
body.checkout-index-index #hyva-checkout-main input[type="password"],
body.checkout-index-index #hyva-checkout-main input[type="search"],
body.checkout-index-index #hyva-checkout-main input[type="url"],
body.checkout-index-index #hyva-checkout-main input:not([type]),
body.checkout-index-index #hyva-checkout-main select,
body.checkout-index-index #hyva-checkout-main textarea,
body.checkout-index-index #hyva-checkout-main .form-input,
body.checkout-index-index #hyva-checkout-main .form-select,
body.checkout-index-index #hyva-checkout-main .form-textarea,
body.checkout-default #hyva-checkout-main input[type="text"],
body.checkout-default #hyva-checkout-main input[type="email"],
body.checkout-default #hyva-checkout-main input[type="tel"],
body.checkout-default #hyva-checkout-main select,
body.checkout-default #hyva-checkout-main textarea {
  background: var(--el-cream) !important;
  background-color: var(--el-cream) !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-line-strong) !important;
  border-radius: 0 !important;
  min-height: 2.85rem !important;
  padding: 0.65rem 0.85rem !important;
  font-family: var(--el-sans) !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
  outline: none !important;
  width: 100% !important;
  transition: border-color 0.15s ease, outline-color 0.15s ease !important;
}

body.checkout-index-index #hyva-checkout-main textarea,
body.checkout-default #hyva-checkout-main textarea {
  min-height: 5.5rem !important;
  resize: vertical !important;
}

body.checkout-index-index #hyva-checkout-main input::placeholder,
body.checkout-index-index #hyva-checkout-main textarea::placeholder,
body.checkout-index-index #hyva-checkout-main select:invalid {
  color: var(--el-muted) !important;
  opacity: 1 !important;
}

body.checkout-index-index #hyva-checkout-main input:hover,
body.checkout-index-index #hyva-checkout-main select:hover,
body.checkout-index-index #hyva-checkout-main textarea:hover {
  border-color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main input:focus,
body.checkout-index-index #hyva-checkout-main select:focus,
body.checkout-index-index #hyva-checkout-main textarea:focus,
body.checkout-index-index #hyva-checkout-main .form-input:focus,
body.checkout-index-index #hyva-checkout-main input:focus-visible,
body.checkout-index-index #hyva-checkout-main select:focus-visible,
body.checkout-index-index #hyva-checkout-main textarea:focus-visible {
  outline: 1px solid var(--el-gold) !important;
  outline-offset: 1px !important;
  border-color: var(--el-gold) !important;
  box-shadow: none !important;
  ring: none !important;
}

body.checkout-index-index #hyva-checkout-main input.mage-error,
body.checkout-index-index #hyva-checkout-main select.mage-error,
body.checkout-index-index #hyva-checkout-main textarea.mage-error,
body.checkout-index-index #hyva-checkout-main input[aria-invalid="true"],
body.checkout-index-index #hyva-checkout-main .field.error input {
  border-color: var(--el-oxblood) !important;
}

body.checkout-index-index #hyva-checkout-main .mage-error,
body.checkout-index-index #hyva-checkout-main .field-error,
body.checkout-index-index #hyva-checkout-main .message.error,
body.checkout-index-index #hyva-checkout-main [role="alert"] {
  color: var(--el-oxblood) !important;
  font-size: 0.8rem !important;
}

/* Field grid spacing */
body.checkout-index-index #hyva-checkout-main .field,
body.checkout-index-index #hyva-checkout-main .form-group,
body.checkout-index-index #hyva-checkout-main [class*="field-"] {
  margin-bottom: 0.95rem !important;
}

body.checkout-index-index #hyva-checkout-main .field.choice,
body.checkout-index-index #hyva-checkout-main .field.choice label {
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
}

/* Guest email emphasis */
body.checkout-index-index #hyva-checkout-main input[name="email"],
body.checkout-index-index #hyva-checkout-main input#customer-email,
body.checkout-index-index #hyva-checkout-main input[id*="email"],
body.checkout-index-index #hyva-checkout-main input[autocomplete="email"] {
  border-color: var(--el-line-strong) !important;
  background: var(--el-cream) !important;
}

/* --------------------------------------------------------------------------
   Radios / checkboxes — ink accent, boutique cards
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main input[type="radio"],
body.checkout-index-index #hyva-checkout-main input[type="checkbox"] {
  accent-color: var(--el-ink) !important;
  width: 1.05rem !important;
  height: 1.05rem !important;
  min-height: 1.05rem !important;
  border-radius: 0 !important;
  border: 1px solid var(--el-line-strong) !important;
  background: var(--el-cream) !important;
  flex-shrink: 0 !important;
}

body.checkout-index-index #hyva-checkout-main input[type="radio"]:checked,
body.checkout-index-index #hyva-checkout-main input[type="checkbox"]:checked {
  accent-color: var(--el-ink) !important;
  border-color: var(--el-ink) !important;
}

/* --------------------------------------------------------------------------
   Shipping methods
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main #shipping-methods,
body.checkout-index-index #hyva-checkout-main #shipping-method-list,
body.checkout-index-index #hyva-checkout-main [id*="shipping-method"] {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.65rem !important;
}

body.checkout-index-index #hyva-checkout-main #shipping-method-list > div,
body.checkout-index-index #hyva-checkout-main [id^="shipping-method-option-"],
body.checkout-index-index #hyva-checkout-main .shipping-method,
body.checkout-index-index #hyva-checkout-main .methods-shipping .item {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  color: var(--el-ink) !important;
  transition: border-color 0.15s ease, background 0.15s ease !important;
}

body.checkout-index-index #hyva-checkout-main #shipping-method-list > div.active,
body.checkout-index-index #hyva-checkout-main [id^="shipping-method-option-"].active,
body.checkout-index-index #hyva-checkout-main #shipping-method-list > div:has(input:checked),
body.checkout-index-index #hyva-checkout-main [id^="shipping-method-option-"]:has(input:checked) {
  border-color: var(--el-gold) !important;
  background: rgba(180, 151, 102, 0.10) !important;
  box-shadow: inset 3px 0 0 var(--el-gold) !important;
}

body.checkout-index-index #hyva-checkout-main #shipping-method-list label,
body.checkout-index-index #hyva-checkout-main [id^="shipping-method-option-"] label {
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  color: var(--el-ink) !important;
  cursor: pointer !important;
  padding: 1rem 1.1rem !important;
}

body.checkout-index-index #hyva-checkout-main #shipping-method-list .price,
body.checkout-index-index #hyva-checkout-main [id^="shipping-method-option-"] .price {
  color: var(--el-ink) !important;
  font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   Payment methods (Mollie / PayPal / cards)
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main #payment-methods,
body.checkout-index-index #hyva-checkout-main #payment-method-list,
body.checkout-index-index #hyva-checkout-main [id*="payment-method"],
body.checkout-index-index #hyva-checkout-main .payment-method,
body.checkout-index-index #hyva-checkout-main .payment-methods {
  color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main .payment-method,
body.checkout-index-index #hyva-checkout-main [id^="payment-method-"],
body.checkout-index-index #hyva-checkout-main #payment-method-list > div,
body.checkout-index-index #hyva-checkout-main .mollie-payment-method,
body.checkout-index-index #hyva-checkout-main [class*="mollie"] {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  color: var(--el-ink) !important;
  margin-bottom: 0.55rem !important;
}

body.checkout-index-index #hyva-checkout-main .payment-method._active,
body.checkout-index-index #hyva-checkout-main .payment-method.active,
body.checkout-index-index #hyva-checkout-main .payment-method:has(input:checked),
body.checkout-index-index #hyva-checkout-main [id^="payment-method-"].active,
body.checkout-index-index #hyva-checkout-main [id^="payment-method-"]:has(input:checked) {
  border-color: var(--el-gold) !important;
  background: rgba(180, 151, 102, 0.10) !important;
  box-shadow: inset 3px 0 0 var(--el-gold) !important;
}

body.checkout-index-index #hyva-checkout-main .payment-method label,
body.checkout-index-index #hyva-checkout-main .payment-method-title,
body.checkout-index-index #hyva-checkout-main .payment-method .title {
  color: var(--el-ink) !important;
  font-family: var(--el-sans) !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  font-weight: 500 !important;
  font-size: 0.95rem !important;
}

body.checkout-index-index #hyva-checkout-main .payment-method-content,
body.checkout-index-index #hyva-checkout-main .payment-method .payment-method-content {
  background: transparent !important;
  border-top: 1px solid var(--el-line-soft) !important;
  padding: 0.85rem 1rem 1rem !important;
  color: var(--el-muted-ink) !important;
}

/* Mollie components / iframes chrome */
body.checkout-index-index #hyva-checkout-main .mollie-component,
body.checkout-index-index #hyva-checkout-main [class*="mollie-"] iframe,
body.checkout-index-index #hyva-checkout-main .mollie-card-component {
  border-color: var(--el-line-strong) !important;
  background: var(--el-cream) !important;
}

body.checkout-index-index #hyva-checkout-main img[src*="mollie"],
body.checkout-index-index #hyva-checkout-main img[alt*="iDEAL"],
body.checkout-index-index #hyva-checkout-main img[alt*="PayPal"],
body.checkout-index-index #hyva-checkout-main .payment-icon {
  filter: none !important;
  opacity: 1 !important;
}

/* --------------------------------------------------------------------------
   Order summary sidebar
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main aside,
body.checkout-index-index #hyva-checkout-main [data-role="summary"],
body.checkout-index-index #hyva-checkout-main .price-summary,
body.checkout-index-index #hyva-checkout-main #hyva-checkout-price-summary,
body.checkout-index-index #hyva-checkout-main [id*="price-summary"],
body.checkout-index-index #hyva-checkout-main [id*="order-summary"],
body.checkout-index-index #hyva-checkout-main .opc-block-summary,
body.checkout-index-index #hyva-checkout-main .cart-summary {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  color: var(--el-ink) !important;
  padding: 1.25rem !important;
  box-shadow: none !important;
}

body.checkout-index-index #hyva-checkout-main aside h2,
body.checkout-index-index #hyva-checkout-main .price-summary h2,
body.checkout-index-index #hyva-checkout-main [id*="price-summary"] h2,
body.checkout-index-index #hyva-checkout-main [id*="order-summary"] h2 {
  border-bottom: 1px solid var(--el-line) !important;
  padding-bottom: 0.65rem !important;
  margin-bottom: 1rem !important;
}

body.checkout-index-index #hyva-checkout-main .price-summary .item,
body.checkout-index-index #hyva-checkout-main aside .product,
body.checkout-index-index #hyva-checkout-main [id*="cart-items"] .item,
body.checkout-index-index #hyva-checkout-main .cart-items .item {
  border-bottom: 1px solid var(--el-line-soft) !important;
  padding: 0.85rem 0 !important;
  color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main .price,
body.checkout-index-index #hyva-checkout-main .amount,
body.checkout-index-index #hyva-checkout-main .grand.totals .price,
body.checkout-index-index #hyva-checkout-main .totals .price,
body.checkout-index-index #hyva-checkout-main [data-th="Order Total"] .price,
body.checkout-index-index #hyva-checkout-main .grand-total .price {
  color: var(--el-ink) !important;
  font-weight: 600 !important;
}

body.checkout-index-index #hyva-checkout-main .grand.totals,
body.checkout-index-index #hyva-checkout-main .grand-total,
body.checkout-index-index #hyva-checkout-main .totals.grand {
  border-top: 1px solid var(--el-ink) !important;
  margin-top: 0.75rem !important;
  padding-top: 0.85rem !important;
  font-size: 1.05rem !important;
}

body.checkout-index-index #hyva-checkout-main .totals .mark,
body.checkout-index-index #hyva-checkout-main .totals th,
body.checkout-index-index #hyva-checkout-main .price-summary .label {
  color: var(--el-muted-ink) !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  font-size: 0.9rem !important;
}

/* Cart item image in summary */
body.checkout-index-index #hyva-checkout-main aside img,
body.checkout-index-index #hyva-checkout-main .price-summary img,
body.checkout-index-index #hyva-checkout-main [id*="cart-items"] img {
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  background: var(--el-paper) !important;
}

/* --------------------------------------------------------------------------
   Buttons — boutique Place order + primary / secondary
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main .btn,
body.checkout-index-index #hyva-checkout-main button.btn,
body.checkout-index-index #hyva-checkout-main a.btn,
body.checkout-index-index #hyva-checkout-main .action,
body.checkout-default #hyva-checkout-main .btn {
  border-radius: 0 !important;
  font-family: var(--el-sans) !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-size: 0.75rem !important;
  box-shadow: none !important;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
}

/* Primary = cream fill on ink border (boutique on paper) */
body.checkout-index-index #hyva-checkout-main .btn-primary,
body.checkout-index-index #hyva-checkout-main button.btn-primary,
body.checkout-index-index #hyva-checkout-main a.btn-primary,
body.checkout-index-index #hyva-checkout-main button[type="submit"].btn-primary,
body.checkout-index-index #hyva-checkout-main .action.primary,
body.checkout-default #hyva-checkout-main .btn-primary,
.el-sticky-place .btn-primary,
.el-sticky-place button.btn-primary {
  background: var(--el-cream) !important;
  background-color: var(--el-cream) !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-ink) !important;
  min-height: 3.35rem !important;
  padding: 0.9rem 1.5rem !important;
}

body.checkout-index-index #hyva-checkout-main .btn-primary:hover,
body.checkout-index-index #hyva-checkout-main button.btn-primary:hover,
body.checkout-index-index #hyva-checkout-main a.btn-primary:hover,
.el-sticky-place .btn-primary:hover {
  background: var(--el-ink) !important;
  background-color: var(--el-ink) !important;
  color: var(--el-cream) !important;
  border-color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main .btn-primary:disabled,
body.checkout-index-index #hyva-checkout-main button.btn-primary:disabled,
body.checkout-index-index #hyva-checkout-main .btn-primary[disabled],
.el-sticky-place .btn-primary:disabled {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  background: var(--el-sand) !important;
  color: var(--el-muted) !important;
  border-color: var(--el-line) !important;
}

/* Secondary / quiet */
body.checkout-index-index #hyva-checkout-main .btn-secondary,
body.checkout-index-index #hyva-checkout-main .btn:not(.btn-primary),
body.checkout-index-index #hyva-checkout-main button.btn:not(.btn-primary) {
  background: transparent !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-line-strong) !important;
}

body.checkout-index-index #hyva-checkout-main .btn-secondary:hover,
body.checkout-index-index #hyva-checkout-main .btn:not(.btn-primary):hover {
  border-color: var(--el-ink) !important;
  background: rgba(25, 23, 20, 0.04) !important;
}

/* Navigation next / back */
body.checkout-index-index #hyva-checkout-main [x-bind*="buttonNext"],
body.checkout-index-index #hyva-checkout-main [x-bind*="buttonPlaceOrder"],
body.checkout-index-index #hyva-checkout-main button[x-bind*="PlaceOrder"] {
  background: var(--el-cream) !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-ink) !important;
}

/* --------------------------------------------------------------------------
   Sticky Place rail — TIMING, trust, trading name
   -------------------------------------------------------------------------- */
.el-sticky-place,
body.checkout-index-index .el-sticky-place,
body.checkout-default .el-sticky-place {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 40 !important;
  margin-top: 1.25rem !important;
  padding: 1rem 0 calc(1rem + env(safe-area-inset-bottom, 0px)) !important;
  background: var(--el-cream) !important;
  border-top: 1px solid var(--el-line) !important;
  box-shadow: 0 -10px 28px rgba(25, 23, 20, 0.08) !important;
}

.el-sticky-place .el-place-timing,
body.checkout-index-index .el-sticky-place .el-place-timing {
  margin: 0 0 0.55rem !important;
  text-align: center !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: var(--el-ink) !important;
  letter-spacing: 0.02em !important;
  font-family: var(--el-sans) !important;
}

.el-sticky-place .el-bag-trust,
.el-sticky-place .el-place-trust,
body.checkout-index-index .el-sticky-place .el-place-trust {
  margin: 0 0 0.85rem !important;
  padding: 0.75rem 0.95rem !important;
  border: 1px solid var(--el-line) !important;
  background: var(--el-cream) !important;
  color: var(--el-ink) !important;
  font-size: 0.68rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  line-height: 1.55 !important;
  text-align: center !important;
  font-weight: 500 !important;
}

.el-sticky-place .el-place-trust strong,
body.checkout-index-index .el-sticky-place .el-place-trust strong {
  color: var(--el-gold) !important;
  font-weight: 600 !important;
}

.el-sticky-place .el-trading,
body.checkout-index-index .el-sticky-place .el-trading {
  margin: 0.6rem 0 0 !important;
  text-align: center !important;
  font-size: 0.65rem !important;
  letter-spacing: 0.06em !important;
  color: var(--el-muted) !important;
  opacity: 0.9 !important;
}

.el-sticky-place .btn-primary,
.el-sticky-place button.btn {
  width: 100% !important;
  justify-content: center !important;
}

/* Hyvä nav place-order zone without our wrapper */
body.checkout-index-index #hyva-checkout-main [id*="place-order"],
body.checkout-index-index #hyva-checkout-main .place-order,
body.checkout-index-index #hyva-checkout-main nav.navigation {
  background: transparent !important;
}

body.checkout-index-index #hyva-checkout-main nav.navigation .btn-primary {
  width: 100% !important;
}

/* --------------------------------------------------------------------------
   Messages / loaders / dialogs inside checkout
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main .message,
body.checkout-index-index #hyva-checkout-main .messages,
body.checkout-index-index #hyva-checkout-main .component-messenger {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main .message.success {
  border-left: 3px solid var(--el-gold) !important;
}

body.checkout-index-index #hyva-checkout-main .message.error {
  border-left: 3px solid var(--el-oxblood) !important;
  color: var(--el-oxblood) !important;
}

body.checkout-index-index #hyva-checkout-main .loader,
body.checkout-index-index #hyva-checkout-main .loading-mask,
body.checkout-index-index #hyva-checkout-main [class*="spinner"],
body.checkout-index-index .mollie-applepay-loader {
  color: var(--el-ink) !important;
}

body.checkout-index-index .fixed.inset-0.bg-black,
body.checkout-index-index [class*="bg-black"][class*="opacity"] {
  background-color: rgba(25, 23, 20, 0.45) !important;
}

body.checkout-index-index .fixed .bg-white,
body.checkout-index-index [class*="rounded-lg"].bg-white {
  background: var(--el-cream) !important;
  border-radius: 0 !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-line) !important;
}

/* Terms & conditions */
body.checkout-index-index #hyva-checkout-main .checkout-agreement,
body.checkout-index-index #hyva-checkout-main [id*="terms"],
body.checkout-index-index #hyva-checkout-main .terms {
  color: var(--el-muted-ink) !important;
  font-size: 0.85rem !important;
}

body.checkout-index-index #hyva-checkout-main .checkout-agreement a,
body.checkout-index-index #hyva-checkout-main .terms a {
  color: var(--el-gold) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* --------------------------------------------------------------------------
   Links inside checkout
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main a:not(.btn):not(.btn-primary) {
  color: var(--el-ink) !important;
  text-decoration-color: var(--el-gold) !important;
}

body.checkout-index-index #hyva-checkout-main a:not(.btn):not(.btn-primary):hover {
  color: var(--el-gold) !important;
}

/* --------------------------------------------------------------------------
   Address book / saved addresses
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main .address-list li,
body.checkout-index-index #hyva-checkout-main [class*="address-item"],
body.checkout-index-index #hyva-checkout-main .shipping-address-item {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  color: var(--el-ink) !important;
  padding: 1rem !important;
}

body.checkout-index-index #hyva-checkout-main .shipping-address-item.selected,
body.checkout-index-index #hyva-checkout-main .address-list li.active,
body.checkout-index-index #hyva-checkout-main [class*="address-item"].active {
  border-color: var(--el-gold) !important;
  box-shadow: inset 3px 0 0 var(--el-gold) !important;
}

/* --------------------------------------------------------------------------
   Coupon / discount
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main .discount,
body.checkout-index-index #hyva-checkout-main [id*="discount"],
body.checkout-index-index #hyva-checkout-main [id*="coupon"] {
  background: var(--el-cream) !important;
  border-color: var(--el-line) !important;
  color: var(--el-ink) !important;
}

/* --------------------------------------------------------------------------
   Footer on checkout
   -------------------------------------------------------------------------- */
body.checkout-index-index .page-footer,
body.checkout-default .page-footer,
body.checkout-index-index footer,
body.checkout-default footer {
  background: var(--el-footer) !important;
  color: var(--el-cream) !important;
  border-top: none !important;
}

body.checkout-index-index .page-footer a,
body.checkout-default .page-footer a {
  color: var(--el-cream) !important;
}

body.checkout-index-index .page-footer a:hover {
  color: var(--el-gold) !important;
}

/* --------------------------------------------------------------------------
   Cookie bar coexistence
   -------------------------------------------------------------------------- */
body.checkout-index-index .cookie-status-message,
body.checkout-index-index [class*="cookie"] {
  z-index: 50 !important;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 999px) {
  body.checkout-index-index #hyva-checkout-main,
  #hyva-checkout-main {
    width: calc(100% - 1.25rem) !important;
    margin: 1rem auto 3rem !important;
  }

  .el-sticky-place,
  body.checkout-index-index .el-sticky-place {
    margin-inline: -0.65rem !important;
    padding-inline: 0.85rem !important;
  }

  body.checkout-index-index #hyva-checkout-main h1 {
    font-size: 1.85rem !important;
  }

  body.checkout-index-index #hyva-checkout-main h2 {
    font-size: 1.35rem !important;
  }

  body.checkout-index-index #hyva-checkout-main aside,
  body.checkout-index-index #hyva-checkout-main .price-summary {
    padding: 1rem !important;
  }
}

@media (min-width: 1000px) {
  body.checkout-index-index #hyva-checkout-main #hyva-checkout-container {
    gap: 1.75rem !important;
  }

  body.checkout-index-index #hyva-checkout-main aside,
  body.checkout-index-index #hyva-checkout-main .price-summary,
  body.checkout-index-index #hyva-checkout-main [id*="price-summary"] {
    position: sticky !important;
    top: 1.25rem !important;
  }
}

/* --------------------------------------------------------------------------
   Kill remaining Hyvä blue focus rings / ring utilities
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main *:focus,
body.checkout-index-index #hyva-checkout-main *:focus-visible {
  --tw-ring-color: var(--el-gold) !important;
}

body.checkout-index-index #hyva-checkout-main [class*="ring-blue"],
body.checkout-index-index #hyva-checkout-main [class*="ring-sky"],
body.checkout-index-index #hyva-checkout-main [class*="ring-indigo"],
body.checkout-index-index #hyva-checkout-main [class*="focus:ring"] {
  --tw-ring-color: var(--el-gold) !important;
  --tw-ring-offset-color: var(--el-cream) !important;
}

body.checkout-index-index #hyva-checkout-main [class*="outline-blue"] {
  outline-color: var(--el-gold) !important;
}

/* --------------------------------------------------------------------------
   Quantity steppers / small controls
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main button[aria-label*="Increase"],
body.checkout-index-index #hyva-checkout-main button[aria-label*="Decrease"],
body.checkout-index-index #hyva-checkout-main .qty button {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line-strong) !important;
  color: var(--el-ink) !important;
  border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   Table totals inside summary
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main table,
body.checkout-index-index #hyva-checkout-main .data.table {
  color: var(--el-ink) !important;
  border-color: var(--el-line) !important;
}

body.checkout-index-index #hyva-checkout-main table th,
body.checkout-index-index #hyva-checkout-main table td {
  border-color: var(--el-line-soft) !important;
  color: var(--el-ink) !important;
  background: transparent !important;
}

/* --------------------------------------------------------------------------
   Select chevron / native select
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main select {
  appearance: none !important;
  background-image: linear-gradient(45deg, transparent 50%, var(--el-ink) 50%),
    linear-gradient(135deg, var(--el-ink) 50%, transparent 50%) !important;
  background-position: calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
  padding-right: 2.25rem !important;
}

/* --------------------------------------------------------------------------
   Hyvä checkout header strip (if present inside main)
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main .checkout-header,
body.checkout-index-index [class*="checkout-header"] {
  background: var(--el-cream) !important;
  border-bottom: 1px solid var(--el-line) !important;
  color: var(--el-ink) !important;
  box-shadow: none !important;
}

/* --------------------------------------------------------------------------
   Ensure cream cards have breathing room
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main .space-y-2 > :not([hidden]) ~ :not([hidden]),
body.checkout-index-index #hyva-checkout-main .space-y-4 > :not([hidden]) ~ :not([hidden]),
body.checkout-index-index #hyva-checkout-main .space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
}

body.checkout-index-index #hyva-checkout-main .gap-2 {
  gap: 0.65rem !important;
}

body.checkout-index-index #hyva-checkout-main .gap-4 {
  gap: 1rem !important;
}

body.checkout-index-index #hyva-checkout-main .gap-6 {
  gap: 1.35rem !important;
}

body.checkout-index-index #hyva-checkout-main .p-4 {
  padding: 1.1rem !important;
}

body.checkout-index-index #hyva-checkout-main .p-6 {
  padding: 1.35rem !important;
}

/* --------------------------------------------------------------------------
   Final safety: any leftover white panels become cream
   -------------------------------------------------------------------------- */
body.checkout-index-index #hyva-checkout-main [style*="background: white"],
body.checkout-index-index #hyva-checkout-main [style*="background:#fff"],
body.checkout-index-index #hyva-checkout-main [style*="background: #fff"],
body.checkout-index-index #hyva-checkout-main [style*="background-color: white"],
body.checkout-index-index #hyva-checkout-main [style*="background-color:#fff"],
body.checkout-index-index #hyva-checkout-main [style*="background-color: #fff"] {
  background: var(--el-cream) !important;
  background-color: var(--el-cream) !important;
}

body.checkout-index-index #hyva-checkout-main [style*="color: rgb(107"],
body.checkout-index-index #hyva-checkout-main [style*="color:#6b7280"],
body.checkout-index-index #hyva-checkout-main [style*="color: #6b7280"] {
  color: var(--el-muted-ink) !important;
}

/* ==========================================================================
   CUSTOM ONE-PAGE CHECKOUT (live /checkout/ → encorecheckout-onepage-index)
   Overrides stock / weak Hyvä-theme el-* chrome with boutique tokens.
   ========================================================================== */

body.encorecheckout-onepage-index,
body.encorecheckout-onepage-index .page-wrapper,
body.encorecheckout-onepage-index #maincontent,
body.encorecheckout-onepage-index .page-main,
body.encorecheckout-onepage-index .columns {
  background: var(--el-paper) !important;
  background-color: var(--el-paper) !important;
  color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index #header,
body.encorecheckout-onepage-index header.page-header,
body.encorecheckout-onepage-index .page-header {
  background: var(--el-ink) !important;
  color: var(--el-cream) !important;
  border-color: var(--el-ink) !important;
  box-shadow: none !important;
}

body.encorecheckout-onepage-index .el-checkout {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1.5rem !important;
  width: min(72rem, calc(100% - 2rem)) !important;
  margin: 1.5rem auto 4.5rem !important;
  color: var(--el-ink) !important;
  font-family: var(--el-sans) !important;
}

body.encorecheckout-onepage-index .el-checkout-title,
body.encorecheckout-onepage-index .el-display.el-checkout-title {
  font-family: var(--el-serif) !important;
  font-weight: 400 !important;
  font-size: clamp(2.4rem, 5vw, 3.6rem) !important;
  letter-spacing: 0.02em !important;
  color: var(--el-ink) !important;
  margin: 0 0 0.35rem !important;
  line-height: 1.05 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-lead {
  color: var(--el-muted-ink) !important;
  font-size: 0.95rem !important;
  margin: 0 0 1.25rem !important;
}

body.encorecheckout-onepage-index .el-checkout-form {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  background: transparent !important;
}

/* Section fieldsets as cream cards */
body.encorecheckout-onepage-index .el-checkout .el-fields,
body.encorecheckout-onepage-index .el-checkout .el-choice-set,
body.encorecheckout-onepage-index .el-checkout .el-included,
body.encorecheckout-onepage-index .el-checkout .el-summary {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  border-radius: 0 !important;
  padding: 1.25rem 1.35rem 1.4rem !important;
  margin: 0 0 1.15rem !important;
  box-shadow: none !important;
}

body.encorecheckout-onepage-index .el-checkout .el-fields legend,
body.encorecheckout-onepage-index .el-checkout .el-choice-set legend,
body.encorecheckout-onepage-index .el-checkout .el-subhead,
body.encorecheckout-onepage-index .el-checkout .el-kicker,
body.encorecheckout-onepage-index .el-checkout h2,
body.encorecheckout-onepage-index .el-checkout h3 {
  font-family: var(--el-serif) !important;
  font-weight: 400 !important;
  font-size: 1.55rem !important;
  letter-spacing: 0.02em !important;
  color: var(--el-ink) !important;
  margin: 0 0 0.85rem !important;
  padding: 0 0 0.55rem !important;
  border-bottom: 1px solid var(--el-line) !important;
  text-transform: none !important;
  width: 100% !important;
}

body.encorecheckout-onepage-index .el-checkout .el-kicker {
  font-family: var(--el-sans) !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: var(--el-gold) !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 0.35rem !important;
}

/* Field labels */
body.encorecheckout-onepage-index .el-checkout .el-field,
body.encorecheckout-onepage-index .el-checkout .el-field span {
  color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-field > span,
body.encorecheckout-onepage-index .el-checkout .el-field label > span {
  display: block !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 0.35rem !important;
  color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-field em,
body.encorecheckout-onepage-index .el-checkout .el-choice em {
  color: var(--el-muted) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;
}

/* Inputs — cream, square, gold focus */
body.encorecheckout-onepage-index .el-checkout .el-field input,
body.encorecheckout-onepage-index .el-checkout .el-field select,
body.encorecheckout-onepage-index .el-checkout .el-field textarea,
body.encorecheckout-onepage-index .el-checkout input[type="text"],
body.encorecheckout-onepage-index .el-checkout input[type="email"],
body.encorecheckout-onepage-index .el-checkout input[type="tel"],
body.encorecheckout-onepage-index .el-checkout textarea,
body.encorecheckout-onepage-index .el-checkout select {
  background: var(--el-cream) !important;
  background-color: var(--el-cream) !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-line-strong) !important;
  border-radius: 0 !important;
  border-bottom: 1px solid var(--el-line-strong) !important;
  min-height: 2.85rem !important;
  padding: 0.7rem 0.85rem !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none !important;
  width: 100% !important;
  outline: none !important;
}

body.encorecheckout-onepage-index .el-checkout .el-field input:hover,
body.encorecheckout-onepage-index .el-checkout .el-field textarea:hover,
body.encorecheckout-onepage-index .el-checkout .el-field select:hover {
  border-color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-field input:focus,
body.encorecheckout-onepage-index .el-checkout .el-field input:focus-visible,
body.encorecheckout-onepage-index .el-checkout .el-field textarea:focus,
body.encorecheckout-onepage-index .el-checkout .el-field textarea:focus-visible,
body.encorecheckout-onepage-index .el-checkout .el-field select:focus {
  outline: 1px solid var(--el-gold) !important;
  outline-offset: 1px !important;
  border-color: var(--el-gold) !important;
  box-shadow: inset 0 -2px 0 var(--el-gold) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-fields {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0.95rem 1.1rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-fields > legend,
body.encorecheckout-onepage-index .el-checkout .el-fields > .el-field:first-of-type,
body.encorecheckout-onepage-index .el-checkout .el-field[style*="grid-column"],
body.encorecheckout-onepage-index .el-checkout .el-fields .el-field:has(input[name="email"]),
body.encorecheckout-onepage-index .el-checkout .el-fields .el-field:has(input[name="street"]),
body.encorecheckout-onepage-index .el-checkout .el-fields .el-field:has(input[name="street2"]),
body.encorecheckout-onepage-index .el-checkout .el-fields .el-field:has(textarea) {
  grid-column: 1 / -1 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-fields > legend {
  grid-column: 1 / -1 !important;
}

/* Choices — shipping / payment cards */
body.encorecheckout-onepage-index .el-checkout .el-choice-set .el-choice {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.75rem !important;
  padding: 0.95rem 1rem !important;
  margin: 0 0 0.55rem !important;
  border: 1px solid var(--el-line) !important;
  border-bottom: 1px solid var(--el-line) !important;
  background: var(--el-cream) !important;
  border-radius: 0 !important;
  cursor: pointer !important;
}

body.encorecheckout-onepage-index .el-checkout .el-choice-set .el-choice:has(input:checked),
body.encorecheckout-onepage-index .el-checkout .el-choice-set .el-choice:has(input[checked]) {
  border-color: var(--el-gold) !important;
  background: rgba(180, 151, 102, 0.10) !important;
  box-shadow: inset 3px 0 0 var(--el-gold) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-choice input[type="radio"],
body.encorecheckout-onepage-index .el-checkout .el-choice input[type="checkbox"],
body.encorecheckout-onepage-index .el-checkout .el-billing-toggle,
body.encorecheckout-onepage-index .el-checkout input[type="radio"],
body.encorecheckout-onepage-index .el-checkout input[type="checkbox"] {
  accent-color: var(--el-ink) !important;
  width: 1.05rem !important;
  height: 1.05rem !important;
  margin-top: 0.2rem !important;
  flex-shrink: 0 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-choice-copy {
  color: var(--el-ink) !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-choice-detail,
body.encorecheckout-onepage-index .el-checkout .el-field-help,
body.encorecheckout-onepage-index .el-checkout .el-dispatch,
body.encorecheckout-onepage-index .el-checkout .el-note {
  color: var(--el-muted-ink) !important;
  font-size: 0.88rem !important;
  line-height: 1.5 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-pay-trust {
  color: var(--el-ink) !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  margin: 0.5rem 0 1rem !important;
}

/* Included / measures */
body.encorecheckout-onepage-index .el-checkout .el-included,
body.encorecheckout-onepage-index .el-checkout .el-measures,
body.encorecheckout-onepage-index .el-checkout .el-pills {
  color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.4rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0.5rem 0 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-pills li {
  border: 1px solid var(--el-line) !important;
  padding: 0.35rem 0.65rem !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--el-ink) !important;
  background: var(--el-cream) !important;
}

/* Order summary card */
body.encorecheckout-onepage-index .el-checkout .el-summary {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  padding: 1.35rem 1.4rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-summary .el-subhead,
body.encorecheckout-onepage-index .el-checkout .el-summary h2 {
  font-family: var(--el-serif) !important;
  font-size: 1.55rem !important;
  border-bottom: 1px solid var(--el-line) !important;
  padding-bottom: 0.55rem !important;
  margin-bottom: 0.85rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-summary-piece,
body.encorecheckout-onepage-index .el-checkout .el-cart-grade {
  color: var(--el-muted-ink) !important;
  font-size: 0.88rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-summary-lines li,
body.encorecheckout-onepage-index .el-checkout .el-summary-delivery,
body.encorecheckout-onepage-index .el-checkout .el-summary-total,
body.encorecheckout-onepage-index .el-checkout .el-place-total {
  display: flex !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  color: var(--el-ink) !important;
  margin: 0.5rem 0 !important;
  font-size: 0.95rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-summary-total,
body.encorecheckout-onepage-index .el-checkout .el-place-total {
  border-top: 1px solid var(--el-ink) !important;
  padding-top: 0.75rem !important;
  margin-top: 0.75rem !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-total strong,
body.encorecheckout-onepage-index .el-checkout .el-summary-total strong {
  font-family: var(--el-sans) !important;
  font-weight: 700 !important;
  color: var(--el-ink) !important;
}

/* Place honesty / assurance */
body.encorecheckout-onepage-index .el-checkout .el-place-assurance {
  list-style: none !important;
  margin: 0 !important;
  padding: 1rem 1.1rem !important;
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-assurance li {
  position: relative !important;
  padding-left: 1.1rem !important;
  margin: 0.4rem 0 !important;
  color: var(--el-muted-ink) !important;
  font-size: 0.9rem !important;
  line-height: 1.45 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-assurance li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.45em !important;
  width: 0.42rem !important;
  height: 0.42rem !important;
  border: 1px solid var(--el-gold) !important;
  border-radius: 50% !important;
  background: var(--el-cream) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-ask a {
  color: var(--el-ink) !important;
  text-decoration: underline !important;
  text-decoration-color: var(--el-gold) !important;
  text-underline-offset: 0.2em !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-ask a:hover {
  color: var(--el-gold) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-contact a {
  color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-contact a:hover {
  color: var(--el-gold) !important;
}

/* Place order button — ink fill, cream type (boutique on paper) */
body.encorecheckout-onepage-index .el-checkout .el-button,
body.encorecheckout-onepage-index .el-checkout .el-button.el-place,
body.encorecheckout-onepage-index .el-checkout button.el-place,
body.encorecheckout-onepage-index .el-checkout-bar .el-button.el-place {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 3.35rem !important;
  padding: 0.95rem 1.5rem !important;
  background: var(--el-ink) !important;
  background-color: var(--el-ink) !important;
  color: var(--el-cream) !important;
  border: 1px solid var(--el-ink) !important;
  border-radius: 0 !important;
  font-family: var(--el-sans) !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease !important;
}

body.encorecheckout-onepage-index .el-checkout .el-button.el-place:hover,
body.encorecheckout-onepage-index .el-checkout button.el-place:hover {
  background: var(--el-oxblood) !important;
  border-color: var(--el-oxblood) !important;
  color: var(--el-cream) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-button.el-place:disabled,
body.encorecheckout-onepage-index .el-checkout button.el-place:disabled,
body.encorecheckout-onepage-index .el-checkout .el-place[aria-disabled="true"] {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  background: var(--el-sand) !important;
  color: var(--el-muted) !important;
  border-color: var(--el-line) !important;
}

/* Place row layout */
body.encorecheckout-onepage-index .el-checkout .el-place-row {
  display: grid !important;
  gap: 1.25rem !important;
  margin-top: 0.5rem !important;
  align-items: start !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-stack {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.35rem !important;
  background: var(--el-cream) !important;
  border: 1px solid var(--el-line) !important;
  padding: 1.25rem 1.35rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-place-action {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.65rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-legal,
body.encorecheckout-onepage-index .el-checkout .el-place-reply {
  color: var(--el-muted) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.04em !important;
}

/* Errors */
body.encorecheckout-onepage-index .el-checkout .el-errors {
  background: var(--el-cream) !important;
  border: 1px solid var(--el-oxblood) !important;
  border-left: 3px solid var(--el-oxblood) !important;
  color: var(--el-oxblood) !important;
  padding: 0.85rem 1rem !important;
  margin: 0 0 1rem !important;
}

/* Billing toggle row */
body.encorecheckout-onepage-index .el-checkout .el-check {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.55rem !important;
  color: var(--el-ink) !important;
  font-size: 0.92rem !important;
  cursor: pointer !important;
  margin: 0.5rem 0 0.85rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-billing-fields {
  margin-top: 0.75rem !important;
  padding-top: 0.75rem !important;
  border-top: 1px solid var(--el-line-soft) !important;
}

/* Sticky mobile checkout bar */
body.encorecheckout-onepage-index .el-checkout-bar {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 35 !important;
  display: none !important;
  gap: 0.75rem !important;
  align-items: center !important;
  padding: 0.85rem 1rem calc(0.85rem + env(safe-area-inset-bottom, 0px)) !important;
  background: var(--el-cream) !important;
  border-top: 1px solid var(--el-line) !important;
  box-shadow: 0 -8px 24px rgba(25, 23, 20, 0.08) !important;
}

/* Desktop two-column */
@media (min-width: 1000px) {
  body.encorecheckout-onepage-index .el-checkout {
    grid-template-columns: minmax(0, 1.2fr) minmax(20rem, 0.8fr) !important;
    align-items: start !important;
    gap: 1.75rem !important;
  }

  body.encorecheckout-onepage-index .el-checkout-form {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  body.encorecheckout-onepage-index .el-checkout .el-summary {
    grid-column: 2 !important;
    grid-row: 1 !important;
    position: sticky !important;
    top: 1.5rem !important;
    align-self: start !important;
  }

  body.encorecheckout-onepage-index .el-checkout .el-summary .el-place {
    display: none !important;
  }

  body.encorecheckout-onepage-index .el-checkout .el-place-row {
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 22rem) !important;
    gap: 1.5rem !important;
  }
}

@media (max-width: 999px) {
  body.encorecheckout-onepage-index .el-checkout {
    width: calc(100% - 1.25rem) !important;
    margin: 1rem auto 5rem !important;
  }

  body.encorecheckout-onepage-index .el-checkout .el-fields {
    grid-template-columns: 1fr !important;
  }

  body.encorecheckout-onepage-index .el-checkout-bar {
    display: flex !important;
  }

  body.encorecheckout-onepage-index .el-checkout .el-summary {
    position: sticky !important;
    bottom: 0 !important;
  }
}

/* Footer on custom checkout */
body.encorecheckout-onepage-index .page-footer,
body.encorecheckout-onepage-index footer {
  background: var(--el-footer) !important;
  color: var(--el-cream) !important;
}

body.encorecheckout-onepage-index .page-footer a {
  color: var(--el-cream) !important;
}

body.encorecheckout-onepage-index .page-footer a:hover {
  color: var(--el-gold) !important;
}

/* Kill any leftover white / blue on this page */
body.encorecheckout-onepage-index .el-checkout [class*="bg-white"],
body.encorecheckout-onepage-index .el-checkout [class*="bg-gray"],
body.encorecheckout-onepage-index .el-checkout [class*="bg-blue"] {
  background: var(--el-cream) !important;
  color: var(--el-ink) !important;
}

body.encorecheckout-onepage-index .el-checkout [class*="rounded"] {
  border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   Punch pass — stronger boutique chrome on the live one-pager
   -------------------------------------------------------------------------- */
body.encorecheckout-onepage-index .el-checkout .el-fields,
body.encorecheckout-onepage-index .el-checkout .el-choice-set,
body.encorecheckout-onepage-index .el-checkout .el-included,
body.encorecheckout-onepage-index .el-checkout .el-summary,
body.encorecheckout-onepage-index .el-checkout .el-place-stack,
body.encorecheckout-onepage-index .el-checkout .el-place-assurance {
  border: 1px solid rgba(25, 23, 20, 0.22) !important;
  box-shadow: 0 1px 0 rgba(180, 151, 102, 0.35) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-fields legend,
body.encorecheckout-onepage-index .el-checkout .el-choice-set legend,
body.encorecheckout-onepage-index .el-checkout .el-included h2,
body.encorecheckout-onepage-index .el-checkout .el-summary .el-subhead {
  border-bottom: 1px solid var(--el-gold) !important;
  padding-bottom: 0.65rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-field input,
body.encorecheckout-onepage-index .el-checkout .el-field textarea,
body.encorecheckout-onepage-index .el-checkout .el-field select {
  border: 1px solid rgba(25, 23, 20, 0.35) !important;
  background: #fffaf0 !important;
}

body.encorecheckout-onepage-index .el-checkout .el-choice-set .el-choice {
  border: 1px solid rgba(25, 23, 20, 0.22) !important;
  margin-bottom: 0.65rem !important;
}

body.encorecheckout-onepage-index .el-checkout .el-choice-set .el-choice:has(input:checked) {
  border-color: var(--el-gold) !important;
  background: rgba(180, 151, 102, 0.14) !important;
  box-shadow: inset 3px 0 0 var(--el-gold) !important;
}

body.encorecheckout-onepage-index .el-checkout .el-button.el-place,
body.encorecheckout-onepage-index .el-checkout button.el-place {
  background: #191714 !important;
  color: #fffaf0 !important;
  border: 1px solid #191714 !important;
  letter-spacing: 0.14em !important;
}

body.encorecheckout-onepage-index .el-checkout .el-button.el-place:hover {
  background: #681e2c !important;
  border-color: #681e2c !important;
  color: #fffaf0 !important;
}


/* --------------------------------------------------------------------------
   Trust + usability — launch pass
   -------------------------------------------------------------------------- */
body.encorecheckout-onepage-index .el-checkout-trust {
  margin: 0 0 1.35rem !important;
  padding: 1rem 1.15rem !important;
  background: #fffaf0 !important;
  border: 1px solid rgba(25, 23, 20, 0.18) !important;
  border-left: 3px solid #b49766 !important;
  color: #191714 !important;
}
body.encorecheckout-onepage-index .el-checkout-timing {
  margin: 0 0 0.35rem !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  color: #191714 !important;
}
body.encorecheckout-onepage-index .el-checkout-trust-line {
  margin: 0 !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #4a453f !important;
  line-height: 1.5 !important;
}
body.encorecheckout-onepage-index .el-checkout-pay-live {
  margin: 0.55rem 0 0 !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #191714 !important;
}
body.encorecheckout-onepage-index .el-checkout-pay-live::before {
  content: "" !important;
  display: inline-block !important;
  width: 0.45rem !important;
  height: 0.45rem !important;
  margin-right: 0.45rem !important;
  border: 1px solid #b49766 !important;
  border-radius: 50% !important;
  vertical-align: middle !important;
  background: #fffaf0 !important;
}

/* Mobile sticky place bar — always on */
@media (max-width: 999px) {
  body.encorecheckout-onepage-index .el-checkout-bar {
    display: flex !important;
    position: sticky !important;
    bottom: 0 !important;
    z-index: 40 !important;
    gap: 0.85rem !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin: 1rem -0.65rem 0 !important;
    padding: 0.85rem 1rem calc(0.85rem + env(safe-area-inset-bottom, 0px)) !important;
    background: #fffaf0 !important;
    border-top: 1px solid rgba(25, 23, 20, 0.18) !important;
    box-shadow: 0 -10px 28px rgba(25, 23, 20, 0.1) !important;
  }
  body.encorecheckout-onepage-index .el-checkout-bar .el-place-total {
    margin: 0 !important;
    flex: 1 1 auto !important;
  }
  body.encorecheckout-onepage-index .el-checkout-bar .el-place {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 11rem !important;
    min-height: 3rem !important;
  }
  body.encorecheckout-onepage-index .el-checkout {
    padding-bottom: 1rem !important;
  }
}

/* Payment: single quiet choice looks intentional */
body.encorecheckout-onepage-index #checkout-payment .el-dispatch {
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #191714 !important;
  margin: 0.35rem 0 0.5rem !important;
}
body.encorecheckout-onepage-index #checkout-payment .el-choice {
  padding: 1.05rem 1.1rem !important;
}

/* Dossier tab names stay readable on cream */
.catalog-product-view .el-tab-bar label {
  color: #191714 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
}

/* EL-P0-MOLLIE-STICKY-PAD
   Mobile ≤999: sticky Place must not crop Mollie Card / iDEAL.
   Extra content bottom padding + scroll-margin so payment methods stay fully readable above the bar.
*/
@media (max-width: 999px) {
  body.checkout-index-index,
  body.checkout-default {
    --el-sticky-place-h: 13.5rem;
  }

  body.checkout-index-index #hyva-checkout-main,
  body.checkout-default #hyva-checkout-main,
  #hyva-checkout-main {
    padding-bottom: calc(var(--el-sticky-place-h, 13.5rem) + env(safe-area-inset-bottom, 0px)) !important;
  }

  body.checkout-index-index #hyva-checkout-main #payment,
  body.checkout-index-index #hyva-checkout-main #payment-methods,
  body.checkout-index-index #hyva-checkout-main #payment-method-list,
  body.checkout-index-index #hyva-checkout-main [id*="payment-method"],
  body.checkout-index-index #hyva-checkout-main .payment-method,
  body.checkout-index-index #hyva-checkout-main .mollie-payment-method,
  body.checkout-index-index #hyva-checkout-main .mollie-component,
  body.checkout-index-index #hyva-checkout-main .mollie-card-component {
    position: relative !important;
    z-index: 1 !important;
    scroll-margin-bottom: calc(var(--el-sticky-place-h, 13.5rem) + 1.25rem + env(safe-area-inset-bottom, 0px)) !important;
  }

  .el-sticky-place,
  body.checkout-index-index .el-sticky-place,
  body.checkout-default .el-sticky-place {
    z-index: 40 !important;
    background: #fffaf0 !important;
  }
}

/* EL-BILLING-MIRROR-DELIVERY */
body.checkout-index-index #hyva-checkout-main #billing-details,
body.checkout-index-index #hyva-checkout-main #shipping-details {
  background: var(--el-cream) !important;
  color: var(--el-ink) !important;
  border: 1px solid var(--el-line) !important;
  padding: 1.15rem 1.25rem !important;
  margin: 0 0 1.25rem !important;
}

body.checkout-index-index #hyva-checkout-main #billing-details > legend,
body.checkout-index-index #hyva-checkout-main #shipping-details > legend,
body.checkout-index-index #hyva-checkout-main #billing-details h2,
body.checkout-index-index #hyva-checkout-main #shipping-details h2,
body.checkout-index-index #hyva-checkout-main #billing-details .title,
body.checkout-index-index #hyva-checkout-main #shipping-details .title {
  font-family: var(--el-display, inherit) !important;
  font-size: 1.35rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  color: var(--el-ink) !important;
  border-bottom: 1px solid var(--el-line) !important;
  padding-bottom: 0.55rem !important;
  margin: 0 0 0.9rem !important;
}

body.checkout-index-index #hyva-checkout-main .el-billing-same {
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid var(--el-line);
}

body.checkout-index-index #hyva-checkout-main .el-billing-same__label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.65rem !important;
  margin: 0 !important;
  font-size: 0.8125rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  color: var(--el-ink) !important;
  cursor: pointer;
}

body.checkout-index-index #hyva-checkout-main .el-checkout-address__text,
body.checkout-index-index #hyva-checkout-main #billing-details address {
  font-style: normal !important;
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
  color: var(--el-ink) !important;
}

body.checkout-index-index #hyva-checkout-main #billing-details .address-form,
body.checkout-index-index #hyva-checkout-main #shipping-details .address-form {
  margin-top: 0.35rem;
}
