/* t-portes-ux-20261020 — só carregado com a flag ligada */
html.cv2ship-on #checkout_free_shipping, html.cv2ship-on.cv2ship-drawer [data-cart-drawer-free-shipping] { display: none !important; } /* t1500u: barra nativa do drawer só sai com ux_drawer ligado */
.cv2ship { margin: 10px 0; padding: 12px 14px; border: 1px solid #eadfe5; border-radius: 8px; background: #fffafa; color: #332c30; font-size: 14px; line-height: 1.35; }
.cv2ship:empty { display: none; }
.cv2ship--compact { padding: 11px 12px; }
.cv2ship__row { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 8px; align-items: center; font-weight: 700; }
.cv2ship__row + .cv2ship__row { margin-top: 6px; }
.cv2ship__row--ok { color: #166534; }
.cv2ship__row--warn { color: #92400e; }
.cv2ship__row--err { color: #991b1b; grid-template-columns: minmax(0, 1fr); }
.cv2ship__bar { display: block; height: 7px; margin: 10px 0 8px; overflow: hidden; border-radius: 999px; background: #e7deda; }
.cv2ship__bar span { display: block; height: 100%; border-radius: 999px; background: #8d1530; transition: width 260ms ease; }
.cv2ship__fsp { color: #8d1530; font-weight: 800; text-align: right; }
.cv2ship__fsp--muted { color: #6b5b63; font-weight: 600; }
.cv2ship__meta { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 8px; margin-top: 8px; color: #4b3f45; font-size: 13px; }
.cv2ship__row--loading { grid-template-columns: minmax(0, 1fr); }
.cv2ship__skel { display: block; height: 14px; width: 70%; border-radius: 6px; background: linear-gradient(90deg, #eee6e9 0%, #f8f3f5 50%, #eee6e9 100%); background-size: 200% 100%; animation: cv2shipSk 1.1s linear infinite; }
.cv2ship__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
@keyframes cv2shipSk { from { background-position: 200% 0; } to { background-position: -200% 0; } }
@media (prefers-reduced-motion: reduce) { .cv2ship__skel { animation: none; } .cv2ship__bar span { transition: none; } }

/* ===== Fase C (proposta Claude Design) — barra global · homepage · PDP. Render no servidor: altura reservada, sem CLS ===== */
.cv2sb { position: relative; z-index: 95; background: #FBF0F4; border-bottom: 1px solid #F0D5E1; color: #231A1F; font-size: 14px; line-height: 1.3; box-sizing: border-box; min-height: 40px; display: flex; align-items: center; justify-content: center; padding: 0 16px; }
.cv2sb__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 4px 14px; white-space: nowrap; min-height: 40px; }
.cv2sb__dest { display: inline-flex; align-items: center; gap: 6px; }
.cv2sb__lbl--m, .cv2sb__disp--m { display: none; }
.cv2sb__pickwrap { position: relative; display: inline-block; }
.cv2sb__pick { display: inline-flex; align-items: center; gap: 6px; font: inherit; font-weight: 600; color: #9D0048; background: #fff; border: 1px solid #E8BFD2; border-radius: 20px; padding: 2px 10px 2px 12px; cursor: pointer; line-height: 1.35; margin: 0; }
.cv2sb__pick:hover, .cv2sb__pick[aria-expanded="true"] { border-color: #9D0048; }
.cv2sb__pick:focus-visible, .cv2sb__opt:focus-visible, .cv2sp__pais:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2sb__caret { font-size: 9px; }
.cv2sb__country { color: #9D0048; font-weight: 600; }
.cv2sb__from strong, .cv2sb__fw { color: #9D0048; }
.cv2sb__fw { letter-spacing: .04em; }
.cv2sb__free--warn { color: #6E6168; }
.cv2sb__dot { width: 4px; height: 4px; border-radius: 50%; background: #D99AB6; flex: 0 0 4px; }
.cv2sb__menu { position: absolute; top: calc(100% + 8px); left: -12px; z-index: 300; background: #fff; border-radius: 12px; box-shadow: 0 10px 30px rgba(35,26,31,.18); padding: 8px; display: flex; flex-direction: column; width: 300px; white-space: normal; text-align: left; box-sizing: border-box; }
.cv2sb__menu[hidden] { display: none; }
.cv2sb__mt { font-size: 12px; font-weight: 600; letter-spacing: .1em; color: #6E6168; padding: 6px 10px 8px; }
.cv2sb__opt { display: grid; grid-template-columns: 1fr auto; gap: 12px; font: inherit; font-size: 14px; text-align: left; background: transparent; color: #231A1F; border: 0; border-radius: 8px; padding: 9px 10px; cursor: pointer; margin: 0; }
.cv2sb__opt:hover, .cv2sb__opt.is-on { background: #FBF0F4; }
.cv2sb__opt[disabled] { opacity: .55; cursor: progress; }
.cv2sb__on { font-weight: 600; }
.cv2sb__ov { color: #6E6168; }
.cv2sb__opt--other .cv2sb__on { font-weight: 500; color: #9D0048; }
.cv2sb__note { font-size: 12px; line-height: 1.45; color: #6E6168; padding: 10px 10px 4px; border-top: 1px solid #F0E6EA; margin-top: 6px; }
.cv2sb__err { font-size: 12px; color: #9F1239; padding: 6px 10px 0; }
.cv2sb__err[hidden] { display: none; }
@media only screen and (max-width: 800px) {
	.cv2sb { height: 52px; min-height: 52px; padding: 8px 14px; font-size: 13px; display: block; overflow: visible; }
	.cv2sb__in { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: 18px 16px; gap: 2px 8px; min-height: 0; justify-content: stretch; align-items: center; }
	.cv2sb__lbl--d, .cv2sb__from, .cv2sb__dot, .cv2sb__disp--d { display: none; }
	.cv2sb__lbl--m { display: inline; }
	.cv2sb__dest { grid-column: 1; grid-row: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; gap: 4px; }
	.cv2sb__free { grid-column: 2; grid-row: 1; text-align: right; overflow: hidden; text-overflow: ellipsis; }
	.cv2sb__disp--m { display: block; grid-column: 1 / -1; grid-row: 2; font-size: 12px; color: #6E6168; overflow: hidden; text-overflow: ellipsis; }
	.cv2sb__pickwrap { position: static; }
	.cv2sb__pick { background: none; border: 0; padding: 0; border-radius: 0; text-decoration: underline; text-underline-offset: 3px; font-weight: 700; gap: 4px; }
	.cv2sb__menu { left: 8px; right: 8px; width: auto; top: calc(100% + 4px); max-height: 70vh; overflow: auto; }
	.cv2sb__opt { grid-template-columns: 1fr; gap: 2px; }
}
/* homepage — vantagens (3 cartões; cartão 1 com seletor de destino). Render no servidor => sem CLS */
.cv2sh { margin: 24px 56px; box-sizing: border-box; }
.cv2sh__g { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: #fff; border-radius: 16px; min-height: 84px; }
.cv2sh__c { position: relative; display: flex; gap: 14px; align-items: center; padding: 18px 24px; min-width: 0; }
.cv2sh__c + .cv2sh__c::before { content: ""; position: absolute; left: 0; top: 18px; bottom: 18px; width: 1px; background: #F0E6EA; }
.cv2sh__ic { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 50%; background: #FBF0F4; color: #9D0048; display: flex; align-items: center; justify-content: center; }
.cv2sh__ic svg { display: block; }
.cv2sh__tx { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
.cv2sh__t, .cv2sh__s { margin: 0; padding: 0; }
.cv2sh__t { font-weight: 600; font-size: 16px; color: #231A1F; line-height: 1.3; }
.cv2sh__s { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 18px; color: #5E5258; line-height: 1.25; }
.cv2sh__s--free { color: #9D0048; }
.cv2sh__s a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.cv2sx-pickwrap { position: relative; display: inline-block; }
.cv2sh__pick { display: inline-flex; align-items: center; gap: 6px; font: inherit; font-weight: 600; color: #9D0048; background: none; border: 0; border-radius: 4px; padding: 6px 0; margin: -6px 0; cursor: pointer; line-height: inherit; text-align: left; }
.cv2sx-pickname { text-decoration: underline dashed #E8BFD2; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.cv2sh__pick:hover .cv2sx-pickname, .cv2sh__pick[aria-expanded="true"] .cv2sx-pickname { text-decoration-color: #9D0048; }
.cv2sh__pick:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2sx-caret { width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; flex: 0 0 auto; }
.cv2sx-menu { left: -12px; top: calc(100% + 8px); width: 380px; }
@media only screen and (min-width: 801px) { .cv2sx-menu .cv2sb__on, .cv2sx-menu .cv2sb__ov { white-space: nowrap; } .cv2sp .cv2sx-menu { left: auto; right: -12px; } }
.cv2sp .cv2sx-caret { margin-left: 4px; display: inline-block; vertical-align: middle; }
@media only screen and (max-width: 1024px) { .cv2sh { margin: 20px 20px; } .cv2sh__c { padding: 16px 16px; gap: 12px; } }
@media only screen and (max-width: 800px) {
	.cv2sh { margin: 16px 12px; }
	.cv2sh__g { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; background: transparent; border-radius: 0; min-height: 0; }
	.cv2sh__c { background: #fff; border-radius: 14px; padding: 12px 14px; gap: 12px; }
	.cv2sh__c + .cv2sh__c::before { display: none; }
	.cv2sh__c--ship { grid-column: 1 / -1; }
	.cv2sh__c:not(.cv2sh__c--ship) { flex-direction: column; align-items: flex-start; gap: 6px; padding: 12px; }
	.cv2sh__ic { flex-basis: 32px; width: 32px; height: 32px; }
	.cv2sh__ic svg { width: 18px; height: 18px; }
	.cv2sh__t { font-size: 14px; }
	.cv2sh__s { font-family: inherit; font-size: 13px; line-height: 1.35; }
	.cv2sh__c--ship .cv2sh__t { font-size: 15px; }
	.cv2sh__c--ship .cv2sh__s { font-size: 14px; }
	.cv2sh__c--ship .cv2sx-pickwrap { position: static; }
	.cv2sh__pick, .cv2sp__pais { padding: 12px 0; margin: -12px 0; }
	.cv2sx-menu { left: 0; right: 0; width: auto; top: calc(100% + 4px); max-height: 70vh; overflow: auto; }
	.cv2sp .cv2sx-pickwrap { position: static; }
	.cv2sp { position: relative; }
	.cv2sb__opt { min-height: 44px; }
}

/* cartão 1 — opções de transporte do destino (pedido 07:51) */
.cv2sh__g { grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr) minmax(0, 1fr); }
.cv2sh__c--ship .cv2sh__tx { flex: 0 0 auto; max-width: 52%; }
.cv2sh__opts { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 6px; padding-left: 16px; border-left: 1px solid #F0E6EA; align-self: stretch; justify-content: center; }
.cv2sh__opt { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-height: 34px; box-sizing: border-box; font: inherit; font-size: 13px; line-height: 1.3; color: #231A1F; text-align: left; background: #fff; border: 1px solid #F0E6EA; border-radius: 8px; padding: 6px 10px; margin: 0; cursor: pointer; }
.cv2sh__opt:hover { border-color: #E8BFD2; }
.cv2sh__opt.is-on { border-color: #9D0048; background: #FBF0F4; }
.cv2sh__opt:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2sh__opts--one .cv2sh__opt { cursor: default; border-color: #F0E6EA; background: #fff; }
.cv2sh__on { min-width: 0; }
.cv2sh__on strong { font-weight: 600; }
.cv2sh__op { flex: 0 0 auto; color: #6E6168; white-space: nowrap; }
@media only screen and (max-width: 1280px) { .cv2sh__opt { flex-wrap: wrap; row-gap: 0; } .cv2sh__op { font-size: 12px; } }
@media only screen and (max-width: 1024px) { .cv2sh__opts { padding-left: 12px; } .cv2sh__c--ship .cv2sh__tx { max-width: 48%; } }
@media only screen and (max-width: 800px) {
	.cv2sh__g { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.cv2sh__c--ship { flex-wrap: wrap; }
	.cv2sh__c--ship .cv2sh__tx { flex: 1 1 0; max-width: none; }
	.cv2sh__opt { flex-wrap: nowrap; }
	.cv2sh__opts { flex: 1 1 100%; padding-left: 0; border-left: 0; padding-top: 4px; }
	.cv2sh__opt { min-height: 44px; font-size: 14px; }
	.cv2sh__op { display: inline; }
}

/* PDP — bloco de expedição (substitui o texto verde «Recebe…» e o cartão «Embalagem…») */
.cv2sp { background: #fff; border-radius: 14px; padding: 4px 18px; display: flex; flex-direction: column; font-size: 14px; line-height: 1.45; color: #231A1F; margin: 14px 0 0; box-sizing: border-box; }
.cv2sp__r { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid #F0E6EA; }
.cv2sp__r:last-child { border-bottom: 0; }
.cv2sp__r[hidden] { display: none; }
.cv2sp__tx { display: flex; flex-direction: column; min-width: 0; }
.cv2sp__t { font-weight: 600; }
.cv2sp__s { color: #6E6168; }
.cv2sp__dot { flex: 0 0 8px; margin-top: 6px; width: 8px; height: 8px; border-radius: 50%; box-sizing: border-box; }
.cv2sp__dot--ok { background: #1F8A4C; }
.cv2sp__dot--amber { background: #C27A12; }
.cv2sp__dot--grey { background: #B3A8AE; }
.cv2sp__dot--ring { border: 1.5px solid #9D0048; }
.cv2sp__box { flex: 0 0 9px; margin-top: 5px; width: 9px; height: 8px; border: 1.5px solid #9D0048; border-radius: 1px; box-sizing: border-box; }
.cv2sp__pais { font: inherit; font-weight: 600; color: #9D0048; background: none; border: 0; padding: 0; margin: 0; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.cv2sp__free { color: #9D0048; }
.cv2sp--oos .cv2sp__r { padding: 14px 0; }
.cv2sp-cart { display: flex; flex-direction: column; gap: 6px; font-size: 13px; line-height: 1.45; margin-top: 10px; min-height: 48px; color: #231A1F; }
.cv2sp-cart__bar { display: block; height: 4px; background: #F3DCE6; border-radius: 4px; overflow: hidden; }
.cv2sp-cart__bar > span { display: block; height: 100%; background: #9D0048; border-radius: 4px; transition: width 260ms ease; }
.cv2sp-cart.is-loading .cv2sp-cart__tx { display: block; height: 14px; width: 80%; border-radius: 6px; background: linear-gradient(90deg, #eee6e9 0%, #f8f3f5 50%, #eee6e9 100%); background-size: 200% 100%; animation: cv2shipSk 1.1s linear infinite; }
.cv2sp-cart.is-empty { visibility: hidden; }
@media (prefers-reduced-motion: reduce) { .cv2sp-cart.is-loading .cv2sp-cart__tx { animation: none; } .cv2sp-cart__bar > span { transition: none; } }
@media only screen and (max-width: 800px) { .cv2sp .cv2sp__pais { padding: 12px 0; margin: -12px 0; } }

/* ===== t-portes-ux Fase F — faixa de vantagens v2 (revisão de design 20/10 08:54) =====
 * Dentro do container do site (max-width 1440 + 16px, como .cv2-hc-sec__inner / .cv2-bw__inner); fundo #F6F3EF; cartão branco r16;
 * grelha 1.45fr/1fr/1fr; 2 linhas por célula; popover listbox (desktop) / bottom sheet (<768). Sem valores: tudo vem do servidor. */
.cv2fx { margin: 0; padding: 0; box-sizing: border-box; font-family: Inter, Manrope, Poppins, Arial, sans-serif; }
.cv2fx *, .cv2fx *::before, .cv2fx *::after { box-sizing: border-box; }
.cv2fx__in { width: 100%; max-width: 1440px; margin: 0 auto; padding: 0 16px; }
.cv2fx__box { background: #F6F3EF; border-radius: 16px; padding: 28px 56px; } /* 09:14: espaço igual em cima (hero->cartão) e em baixo (cartão->secção seguinte) */
.cv2fx__card { background: #fff; border-radius: 16px; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr) minmax(0, 1fr); }
.cv2fx__c { position: relative; padding: 22px 28px; display: flex; flex-direction: column; justify-content: center; min-width: 0; min-height: 96px; }
.cv2fx__c + .cv2fx__c { border-left: 1px solid #F0E6EA; }
.cv2fx__row { display: flex; align-items: center; gap: 16px; min-width: 0; }
.cv2fx__ic { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: #FBF0F4; color: #9D0048; display: inline-flex; align-items: center; justify-content: center; }
.cv2fx__ic svg { display: block; }
.cv2fx__tx { flex: 1 1 auto; min-width: 0; }
.cv2fx__t { font-size: 17px; font-weight: 600; line-height: 1.3; color: #231A1F; margin: 0; }
.cv2fx__s { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 16px; line-height: 1.3; color: #5E5258; margin: 2px 0 0; }
/* células 2/3: a linha de apoio pode partir em 2 (como na maqueta), nunca esconde o link do WhatsApp */
.cv2fx__c--mini .cv2fx__s { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* linha de apoio do envio: o prazo encolhe com reticências; o preço fica sempre visível */
.cv2fx__s--ship { display: flex; align-items: baseline; white-space: pre; overflow: hidden; }
.cv2fx__s--ship .cv2fx__pz { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: pre; }
.cv2fx__s--ship .cv2fx-m { flex: 0 0 auto; }
.cv2fx__mb { display: none; }
.cv2fx__wa, .cv2fx a.cv2fx__wa { color: #9D0048; font-weight: 600; text-decoration: none; font-family: Inter, Manrope, Poppins, Arial, sans-serif; font-size: .85em; }
.cv2fx__s .cv2fx__wa { font-size: 14px; }
.cv2fx a.cv2fx__wa:hover, .cv2fx a.cv2fx__wa:focus-visible { text-decoration: underline; }
/* destino (botão) */
.cv2fx button.cv2fx__dest, .cv2fx strong.cv2fx__dest { -webkit-appearance: none; appearance: none; background: none; border: 0; margin: 0; padding: 0; font: inherit; font-weight: 600; color: #9D0048; cursor: pointer; line-height: inherit; text-transform: none; letter-spacing: 0; box-shadow: none; min-height: 0; height: auto; width: auto; border-radius: 0; vertical-align: baseline; }
.cv2fx strong.cv2fx__dest { cursor: default; }
.cv2fx .cv2fx__dest .cv2sx-pickname { border-bottom: 1.5px dotted #D99AB6; }
.cv2fx button.cv2fx__dest:hover .cv2sx-pickname, .cv2fx button.cv2fx__dest[aria-expanded="true"] .cv2sx-pickname { border-bottom-color: #9D0048; }
.cv2fx button.cv2fx__dest:focus-visible { outline: 2px solid #9D0048; outline-offset: 3px; border-radius: 3px; }
.cv2fx__caret { display: inline-block; margin-left: 4px; font-size: .7em; transition: transform .15s; }
.cv2fx button.cv2fx__dest[aria-expanded="true"] .cv2fx__caret { transform: rotate(180deg); }
/* selo GRATIS */
.cv2fx__seal { flex: 0 0 auto; background: #FBF0F4; border-radius: 12px; padding: 8px 14px; display: inline-flex; flex-direction: column; align-items: center; text-align: center; line-height: 1.2; }
.cv2fx__seal.is-none { visibility: hidden; }
.cv2fx__seal-k { font-size: 11px; font-weight: 700; letter-spacing: .12em; color: #9D0048; }
.cv2fx__seal-v { font-size: 14px; font-weight: 600; color: #231A1F; white-space: nowrap; }
.cv2fx__band { display: none; }
/* popover */
.cv2fx__pop, .cv2fx__pop * { box-sizing: border-box; }
.cv2fx__pop { font-family: Inter, Manrope, Poppins, Arial, sans-serif; position: absolute; z-index: 60; top: calc(100% + 8px); left: 20px; width: 380px; max-width: calc(100vw - 32px); background: #fff; border-radius: 14px; box-shadow: 0 10px 30px rgba(35, 26, 31, .18); padding: 8px; text-align: left; }
.cv2fx__pop[hidden] { display: none; }
.cv2fx__ph { font-size: 12px; font-weight: 600; letter-spacing: .1em; color: #6E6168; padding: 8px 12px 6px; text-transform: uppercase; }
.cv2fx__lb { max-height: min(420px, 60vh); overflow-y: auto; overscroll-behavior: contain; }
.cv2fx__opt { display: block; padding: 9px 12px; border-radius: 10px; cursor: pointer; outline: none; }
.cv2fx__opt:hover, .cv2fx__opt.is-on, .cv2fx__opt:focus-visible { background: #FBF0F4; }
.cv2fx__opt:focus-visible { box-shadow: inset 0 0 0 2px #9D0048; }
.cv2fx__opt[aria-disabled="true"] { opacity: .55; pointer-events: none; }
.cv2fx__on { display: block; font-size: 15px; font-weight: 600; color: #231A1F; line-height: 1.3; }
.cv2fx__opt.is-on > .cv2fx__on { color: #9D0048; }
.cv2fx__ov { display: block; font-size: 13px; color: #6E6168; line-height: 1.35; margin-top: 1px; }
.cv2fx__crs { margin: 2px 0 6px 12px; padding-left: 10px; border-left: 2px solid #F0E6EA; }
.cv2fx__opt--cr { padding: 7px 10px; }
.cv2fx__opt--cr .cv2fx__on { font-size: 14px; display: flex; align-items: center; gap: 8px; }
.cv2fx__opt.cv2fx__opt--cr.is-on > .cv2fx__on { color: #231A1F; }
.cv2fx__opt--cr .cv2fx__ov { padding-left: 22px; }
.cv2fx__radio { flex: 0 0 14px; width: 14px; height: 14px; border-radius: 50%; border: 1.5px solid #B9A9B1; background: #fff; }
.cv2fx__opt--cr.is-on .cv2fx__radio { border: 4px solid #9D0048; }
.cv2fx__pf { border-top: 1px solid #F0E6EA; margin-top: 6px; padding: 10px 12px 4px; display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.cv2fx__pop a.cv2fx__all { color: #9D0048; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.cv2fx__pop button.cv2fx__other { -webkit-appearance: none; appearance: none; background: none; border: 0; padding: 4px 0; margin: 0; font: inherit; font-size: 14px; color: #5E5258; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; min-height: 0; height: auto; box-shadow: none; text-transform: none; }
.cv2fx__pop button.cv2fx__other:focus-visible, .cv2fx__pop a.cv2fx__all:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2fx__err { display: block; color: #A3122A; font-size: 13px; padding: 4px 12px; }
.cv2fx__err[hidden] { display: none; }

/* ≥1280: com a Cormorant carregada o texto cabe numa linha (medido ES/PT/EN); nowrap evita que o fallback (Georgia, mais largo)
   parta a linha durante o swap da fonte e mexa na altura do cartão (CLS). */
@media (min-width: 1280px) { .cv2fx__c--mini .cv2fx__s { display: block; white-space: nowrap; text-overflow: ellipsis; } }
/* 1280–1439: mesma grelha, margens laterais mais curtas para manter 2 linhas por célula em ES/PT/EN */
@media (min-width: 1280px) and (max-width: 1439px) {
	.cv2fx__box { padding: 28px 24px; }
	.cv2fx__c { padding: 22px 20px; }
	.cv2fx__row { gap: 12px; }
	.cv2fx__c--ship .cv2fx__row { gap: 12px; }
}
@media (min-width: 1024px) and (max-width: 1279px) {
	.cv2fx__box { padding: 24px 24px; }
	.cv2fx__c { padding: 20px 22px; }
	.cv2fx__s--ship .cv2fx__pz { display: none; }
}
/* 768–1023: célula 1 numa linha inteira; 2 e 3 partilham a linha seguinte */
@media (min-width: 768px) and (max-width: 1023px) {
	.cv2fx__box { padding: 24px; }
	.cv2fx__card { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.cv2fx__c--ship { grid-column: 1 / -1; border-bottom: 1px solid #F0E6EA; }
	.cv2fx__c + .cv2fx__c { border-left: 0; }
	.cv2fx__c--mini + .cv2fx__c--mini { border-left: 1px solid #F0E6EA; }
	.cv2fx__c { padding: 20px 24px; }
}
/* mobile <768: cartão do envio + faixa GRATIS; 2 mini-cartões; seletor em bottom sheet */
@media (max-width: 767px) {
	.cv2fx__box { padding: 16px; border-radius: 14px; }
	.cv2fx__card { background: transparent; border-radius: 0; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
	.cv2fx__c { background: #fff; border-radius: 14px; min-height: 0; }
	.cv2fx__c + .cv2fx__c { border-left: 0; }
	.cv2fx__c--ship { grid-column: 1 / -1; padding: 14px 16px; /* 10:11 Jorge: sem min-height (altura natural) */ justify-content: flex-start; }
	.cv2fx__c--ship .cv2fx__row { gap: 12px; }
	.cv2fx__c--ship .cv2fx__ic { flex-basis: 38px; width: 38px; height: 38px; }
	.cv2fx__c--ship .cv2fx__t { font-size: 15px; }
	.cv2fx__s, .cv2fx__c--ship .cv2fx__s { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 12px; line-height: 1.3; } /* pedido 09:14 */
	.cv2fx__seal { display: none; }
	.cv2fx__band { display: flex; align-items: center; justify-content: space-between; gap: 10px; background: #FBF0F4; border-radius: 10px; padding: 8px 12px; margin-top: 12px; font-size: 13px; color: #5E5258; line-height: 1.3; min-height: 34px; }
	.cv2fx__band.is-none { visibility: hidden; }
	.cv2fx__band-k { font-size: 12px; font-weight: 700; letter-spacing: .1em; color: #9D0048; }
	.cv2fx__band-v { text-align: right; }
	.cv2fx__band-v strong { color: #231A1F; font-weight: 600; }
	.cv2fx__c--mini { padding: 14px; justify-content: flex-start; }
	.cv2fx__c--mini .cv2fx__row { flex-direction: column; align-items: flex-start; gap: 8px; }
	.cv2fx__c--mini .cv2fx__ic { flex-basis: 34px; width: 34px; height: 34px; }
	.cv2fx__c--mini .cv2fx__ic svg { width: 18px; height: 18px; }
	.cv2fx__c--mini .cv2fx__t { font-size: 14px; font-weight: 600; white-space: normal; line-height: 1.3; }
	.cv2fx__c--mini .cv2fx__s { display: none; }
	.cv2fx__dk { display: none; }
	.cv2fx__mb { display: inline; }
	.cv2fx__mb .cv2fx__wa { font-size: inherit; }
	/* toque: alvo ≥44px no botão do destino sem mexer no layout */
	.cv2fx button.cv2fx__dest { padding: 12px 6px; margin: -12px -6px; }
	/* bottom sheet */
	.cv2fx__pop { position: fixed; top: auto; left: 0; right: 0; bottom: 0; width: auto; max-width: none; border-radius: 16px 16px 0 0; padding: 8px 8px calc(12px + env(safe-area-inset-bottom, 0px)); box-shadow: 0 -6px 24px rgba(35, 26, 31, .18); z-index: 10050; max-height: 82vh; display: flex; flex-direction: column; }
	.cv2fx__pop[hidden] { display: none; }
	.cv2fx__pop::before { content: ""; display: block; width: 40px; height: 4px; border-radius: 2px; background: #E2D6DC; margin: 2px auto 6px; flex: 0 0 auto; }
	.cv2fx__lb { max-height: none; flex: 1 1 auto; }
	.cv2fx__opt { padding: 11px 12px; }
}
.cv2fx-scrim { display: none; }
@media (max-width: 767px) {
	.cv2fx-scrim { display: block; position: fixed; inset: 0; top: 0; left: 0; right: 0; bottom: 0; background: rgba(35, 26, 31, .38); z-index: 10049; }
	html.cv2fx-lock, html.cv2fx-lock body { overflow: hidden; }
}
@media (prefers-reduced-motion: reduce) { .cv2fx__caret { transition: none; } }

/* Fase G (09:31): destino com várias transportadoras expande no sítio */
.cv2fx__crs[hidden] { display: none; }
.cv2fx__opt[data-cv2sx-multi] > .cv2fx__on { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cv2fx__exp { flex: 0 0 auto; width: 8px; height: 8px; border-right: 1.5px solid #9D0048; border-bottom: 1.5px solid #9D0048; transform: rotate(45deg); margin: -3px 4px 0 0; transition: transform .15s; }
.cv2fx__opt[aria-expanded="true"] .cv2fx__exp { transform: rotate(-135deg); margin-top: 3px; }
.cv2fx__opt.is-open { background: #FBF0F4; }
@media (prefers-reduced-motion: reduce) { .cv2fx__exp { transition: none; } }

/* ---- Fase G (09:37): «Usar a minha localização» no cabeçalho do popover / bottom sheet + sugestão «Detetado: …» ---- */
.cv2fx__ph { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cv2fx__geo { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin: -7px -4px -7px 0; padding: 0; border: 1px solid #E7D3DD; border-radius: 50%; background: #fff; color: #9D0048; cursor: pointer; }
.cv2fx__geo[hidden] { display: none; }
.cv2fx__geo:hover { background: #FBF0F4; }
.cv2fx__geo:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2fx__geo[aria-busy="true"] { opacity: .6; cursor: progress; }
.cv2fx__geomsg { font-size: 13px; line-height: 1.35; color: #6E6168; padding: 0 12px 8px; text-transform: none; letter-spacing: 0; font-weight: 400; }
.cv2fx__geomsg[hidden] { display: none; }
.cv2fx__det { display: block; font-size: 12px; font-weight: 600; color: #9D0048; line-height: 1.3; margin-bottom: 2px; }
.cv2fx__opt.is-det { background: #FBF0F4; box-shadow: inset 3px 0 0 #9D0048; }
@media (max-width: 767px) { .cv2fx__geo { width: 36px; height: 36px; margin: -9px -4px -9px 0; } }

/* 10:12: o destino «Detetado» separa-se dos vizinhos realçados (ativo por cima, seguinte por baixo) */
.cv2fx__opt.is-det { margin: 10px 0; }
.cv2fx__opt.is-det:first-child { margin-top: 0; }
.cv2fx__opt.is-det[aria-expanded="true"] { margin-bottom: 0; }
.cv2fx__opt.is-det[aria-expanded="true"] + .cv2fx__crs { margin-bottom: 10px; }

/* t-portes-blocos B2 — minicart completo (estados A/B/C, protótipo 04·05). Cores da faixa (cv2fx). */
.cv2ship-on.cv2ship-drawer .shopcart-drawer [data-cart-drawer-free-shipping], .cv2ship-on.cv2ship-drawer #shopcart-modal [data-cart-drawer-free-shipping] { display: none !important; }
.cv2ship.cv2ship--drawer { margin: 0 0 10px; padding: 0; border: 0; background: none; }
.cv2mc { box-sizing: border-box; border: 1px solid #F0D5E1; background: #FBF0F4; border-radius: 10px; padding: 10px 12px; font-size: 13px; line-height: 1.35; color: #231A1F; }
.cv2mc--loading { min-height: 44px; display: flex; align-items: center; }
.cv2mc--c { display: flex; align-items: center; justify-content: space-between; gap: 10px; background: #fff; border-style: dashed; border-color: #D9C6CF; }
.cv2mc__ct { min-width: 0; }
.cv2mc button.cv2mc__pill { -webkit-appearance: none; appearance: none; flex: 0 0 auto; border: 0; border-radius: 999px; background: #FBE3EE; color: #9D0048; font: inherit; font-size: 13px; font-weight: 600; padding: 6px 12px; min-height: 32px; height: auto; cursor: pointer; text-transform: none; letter-spacing: 0; box-shadow: none; }
.cv2mc button.cv2mc__pill:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2mc__fs { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.cv2mc__fst { font-weight: 600; }
.cv2mc__fsi { margin-right: 6px; color: #9D0048; font-size: 14px; line-height: 1; vertical-align: -1px; } /* t1578u: camiao (fa-truck, como nas linhas cv2ship__row) antes de «Faltam X €» */
.cv2mc__fsv { color: #5E5258; white-space: nowrap; font-size: 12.5px; }
.cv2mc__bar { display: block; height: 6px; margin-top: 8px; border-radius: 999px; background: #E9DCE2; overflow: hidden; }
.cv2mc__bar > span { display: block; height: 100%; border-radius: 999px; background: #9D0048; transition: width 260ms ease; }
.cv2mc[data-state="free"] { background: #F1FAF4; border-color: #CFEBD8; }
.cv2mc__ok { display: flex; align-items: center; gap: 8px; color: #166534; font-weight: 600; }
.cv2mc__ck { display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; border-radius: 50%; background: #DCF3E4; font-size: 12px; line-height: 1; }
.cv2mc__warn { color: #92400e; font-weight: 600; }
.cv2mc__warn.is-err { color: #991b1b; }
.cv2mc__meta { margin-top: 8px; color: #5E5258; font-size: 12.5px; }
.cv2mc__ok + .cv2mc__meta, .cv2mc__warn + .cv2mc__meta { margin-top: 6px; }
.cv2mc__eta { display: none; }
button.cv2mc__dest { -webkit-appearance: none; appearance: none; background: none; border: 0; margin: 0; padding: 0; font: inherit; font-weight: 600; color: #9D0048; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; min-height: 0; height: auto; box-shadow: none; text-transform: none; letter-spacing: 0; line-height: inherit; }
button.cv2mc__dest::after { content: ""; display: inline-block; margin-left: 4px; vertical-align: middle; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid currentColor; }
button.cv2mc__dest:focus-visible { outline: 2px solid #9D0048; outline-offset: 2px; }
.cv2mc-note { font-size: 11.5px; color: #6B5B63; margin: 2px 0 0; }
/* t1460u: nota do CP como <small> por baixo de «Envío a {país} ▾» (3.º filho da linha Envío, quebra para a linha de baixo, à esquerda) */
.shopcart-drawer__totals > div.cv2mc-has-note { flex-wrap: wrap; row-gap: 0 !important; align-items: baseline; }
.shopcart-drawer__totals > div.cv2mc-has-note > small.cv2mc-note { flex: 0 0 100%; order: 3; display: block; font-size: 11.5px !important; font-weight: 400; line-height: 1.3; color: #8A7B82 !important; margin: 2px 0 0; text-align: left; }
.cv2mc__plus { font-size: 12px; font-weight: 500; color: #5E5258; }
@media (max-width: 640px) {
	.cv2mc { border: 0; background: none; padding: 0 0 2px; border-radius: 0; }
	.cv2mc[data-state="free"] { background: none; }
	.cv2mc--c { border: 1px dashed #D9C6CF; background: #fff; padding: 8px 10px; border-radius: 10px; }
	.cv2mc__fsv, .cv2mc__bar ~ .cv2mc__meta, .cv2mc__ok ~ .cv2mc__meta, .cv2mc__warn ~ .cv2mc__meta { display: none; }
	.cv2mc__meta { margin-top: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.cv2mc__bar ~ .cv2mc__eta, .cv2mc__ok ~ .cv2mc__eta, .cv2mc__warn ~ .cv2mc__eta { display: block; margin-top: 4px; color: #5E5258; font-size: 12px; line-height: 1.35; }
	.cv2mc__fst { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.cv2mc__bar { height: 4px; margin-top: 6px; }
	.cv2mc--loading { min-height: 24px; }
}

/* t-portes-blocos B3 — popover da faixa reutilizado no minicart (abre para cima dentro do drawer; ≤767 px = bottom sheet) */
.cv2fx.cv2fx--mc { position: relative; height: 0; z-index: 5; }
.cv2fx--mc .cv2fx__pop { top: auto; bottom: 6px; left: 0; right: 0; width: auto; max-width: none; max-height: min(62vh, 480px); display: flex; flex-direction: column; }
.cv2fx--mc .cv2fx__pop[hidden] { display: none; }
.cv2fx--mc .cv2fx__lb { overflow-y: auto; min-height: 0; }
.cv2mc [aria-busy="true"], button.cv2mc__dest[aria-busy="true"] { opacity: .6; cursor: progress; }
.cv2fx__pop[data-cv2fx-ported] { z-index: 2147483646; } /* acima do drawer (#shopcart-modal-container: 2147483002) */
.cv2fx-scrim { z-index: 2147483645 !important; }
@media (min-width: 768px) {
	.cv2fx__pop.cv2fx__pop--mcfix { position: fixed; top: auto; right: auto; max-width: none; display: flex; flex-direction: column; }
	.cv2fx__pop.cv2fx__pop--mcfix[hidden] { display: none; }
	.cv2fx__pop--mcfix .cv2fx__lb { overflow-y: auto; min-height: 0; }
}

/* t-portes-blocos B4 — checkout: estados 1/2/3/6 */
#cv2ship-checkout.is-empty { display: none; }
#cv2ship-checkout .cv2mc__fs { font-size: 13px; }
#cv2ship-checkout .cv2mc__ok { font-size: 13px; }
.cv2-ship-live { font-size: 12.5px; color: #166534; margin: 2px 0 0; min-height: 0; }
.cv2-ship-live:empty { display: none; }
/* estado 3: Total «—» e CTA «Calculando…» só por CSS (sem mexer no texto real) */
.cv2-calc .cv3-cur, .cv2-calc #sc_bigtotal, .cv2-calc #cv2_total_suffix { display: none; }
.cv2-calc .cv2-total-strong::after, strong.cv2-calc::after { content: "—"; }
.cv2-calc-dash { font-size: 0 !important; } .cv2-calc-dash::after { content: "—"; font-size: 16px; }
#shopcart_submit.cv2-is-calc .cv2-cta-label, #shopcart_submit.cv2-is-calc .cv2-cta-total { display: none; }
#shopcart_submit .cv2-cta-calc { display: none; }
#shopcart_submit.cv2-is-calc .cv2-cta-calc { display: inline; }
.cv2-zone-err .cv2-cpick__btn, .cv2-cpick__btn[aria-invalid="true"] { border-color: #b91c1c !important; box-shadow: 0 0 0 1px #b91c1c inset; }
.cv2-zone-err select, .cv2-zone-err .floatl__input, select.floatl__input[aria-invalid="true"] { border-color: #b91c1c !important; box-shadow: 0 0 0 1px #b91c1c inset; }
.cv2-zone-err label, .cv2-zone-err .floatl__label { color: #b91c1c !important; }
.cv2-zone-err__msg { color: #b91c1c; font-size: 12.5px; line-height: 1.4; margin: 4px 0 8px; }

/* t1398u (2026-10-26): bloco B6 (barra sticky «Portes + Total» / .cv2-mship) removido — ver css/cv2-cta-dock.css */

.cv2sd{display:flex;flex-direction:column;gap:14px;min-height:100%;color:#1b1519;font-size:14px}
.cv2sd__sec{display:flex;flex-direction:column;gap:8px}
.cv2sd__h{display:flex;align-items:center;gap:8px;margin:0;font-family:inherit;font-size:15px;font-weight:700;color:#1b1519 !important}
.cv2sd__n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#9d0048;color:#fff;font-size:12px;font-weight:700}
.cv2sd__dest{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:48px;padding:10px 14px;border:1px solid #e3d9d3;border-radius:10px;background:#fff;color:#1b1519;font:inherit;text-align:left;cursor:pointer}
.cv2sd__dest:focus-visible,.cv2sd__o:focus-visible,.cv2sd__card:focus-visible,.cv2sd__apply:focus-visible,.cv2sd__back:focus-visible,.cv2sd__geo:focus-visible,.cv2sd__q:focus-visible{outline:2px solid #9d0048;outline-offset:2px}
.cv2sd__dh{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0}
.cv2sd__dn{font-weight:600}
.cv2sd__badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.5}
.cv2sd__badge--chosen{background:#e9f4ec;color:#1f6b37}
.cv2sd__badge--sug{background:#fff4dc;color:#7a5200}
.cv2sd__badge--edit{background:#fbe7ef;color:#9d0048}
.cv2sd__chev{width:9px;height:9px;border-right:2px solid #6f6469;border-bottom:2px solid #6f6469;transform:rotate(45deg);margin:-4px 4px 0 0;flex:0 0 auto;transition:transform .15s}
.cv2sd__dest[aria-expanded=true] .cv2sd__chev{transform:rotate(-135deg);margin-top:4px}
.cv2sd__pick{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid #e3d9d3;border-radius:10px;background:#fff}
.cv2sd__pick[hidden]{display:none}
.cv2sd__q{width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid #d9cfc9;border-radius:8px;font:inherit;font-size:16px;background:#fff}
.cv2sd__geo{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;min-height:36px;padding:6px 10px;border:0;border-radius:8px;background:#f7f3ef;color:#9d0048;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.cv2sd__geo[aria-busy=true]{opacity:.6;cursor:progress}
.cv2sd__gm{margin:0;font-size:12px;color:#6f6469}
.cv2sd__list{max-height:min(46vh,360px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.cv2sd__lg{padding:8px 8px 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#8d8389}
.cv2sd__lg[hidden],.cv2sd__o[hidden]{display:none}
.cv2sd__o{display:flex;align-items:center;min-height:40px;padding:8px 10px;border-radius:8px;cursor:pointer}
.cv2sd__o:hover{background:#f7f3ef}
.cv2sd__o.is-on{background:#fbe7ef;color:#9d0048;font-weight:600}
.cv2sd__nores{margin:4px 8px;color:#6f6469}
.cv2sd__opts{display:flex;flex-direction:column;gap:8px;transition:opacity .15s}
.cv2sd__opts.is-stale{opacity:.45;pointer-events:none}
.cv2sd__cards{display:flex;flex-direction:column;gap:8px}
.cv2sd__card{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e3d9d3;border-radius:12px;background:#fff;cursor:pointer}
.cv2sd__card:hover{border-color:#cdb7c1}
.cv2sd__card.is-on{border-color:#9d0048;background:#fff8fb;box-shadow:0 0 0 1px #9d0048 inset}
.cv2sd__radio{width:18px;height:18px;border:2px solid #b9adb3;border-radius:50%;box-sizing:border-box;position:relative}
.cv2sd__card.is-on .cv2sd__radio{border-color:#9d0048}
.cv2sd__card.is-on .cv2sd__radio::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#9d0048}
.cv2sd__cb{display:flex;flex-direction:column;gap:2px;min-width:0}
.cv2sd__cn{font-size:14px;font-weight:700}
.cv2sd__cs,.cv2sd__cz{font-size:12px;color:#6f6469}
.cv2sd__cp{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}
.cv2sd__pv{font-size:15px;font-weight:700;white-space:nowrap}
.cv2sd__pv--free{color:#1f6b37}
.cv2sd__pv--tbc,.cv2sd__pv--unav{font-size:13px;color:#6f6469;font-weight:600}
.cv2sd__cf{font-size:11px;color:#9d0048;white-space:nowrap}
.cv2sd__msg{margin:0;padding:12px 14px;border-radius:10px;background:#fff;color:#4b4247}
.cv2sd__msg--err{background:#fdecec;color:#8a1c1c}
.cv2sd__retry{margin-left:6px;padding:4px 10px;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;font:inherit;font-weight:600;cursor:pointer}
.cv2sd__note{margin:0;font-size:12px;color:#6f6469}
.cv2sd__skel{display:flex;flex-direction:column;gap:8px}
.cv2sd__skel span{display:block;height:60px;border-radius:12px;background:linear-gradient(90deg,#efe8e2,#f7f3ef,#efe8e2);background-size:200% 100%;animation:cv2sdSk 1.2s linear infinite}
@keyframes cv2sdSk{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.cv2sd__skel span{animation:none}}
.cv2sd__sec--sum[hidden]{display:none}
.cv2sd__sum{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e3d9d3;border-radius:12px;background:#fff}
.cv2sd__sn,.cv2sd__sp{display:flex;flex-direction:column;gap:2px}
.cv2sd__sn span,.cv2sd__sp span{font-size:12px;color:#6f6469}
.cv2sd__sp{text-align:right}
.cv2sd__foot{position:sticky;bottom:0;margin:auto -22px 0;padding:12px 22px calc(14px + env(safe-area-inset-bottom,0px));background:#f7f3ef;border-top:1px solid #eadfd8;display:flex;flex-direction:column;gap:6px}
.cv2sd__apply{width:100%;min-height:48px;padding:12px 16px;border:0;border-radius:10px;background:#9d0048;color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.cv2sd__apply[disabled]{background:#cdb7c1;cursor:not-allowed}
.cv2sd__fn{margin:0;font-size:12px;color:#6f6469;text-align:center}
.cv2sd__err{margin:0;font-size:13px;color:#8a1c1c}
.cv2sd__err[hidden]{display:none}
.cv2sd__back{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;min-height:40px;padding:6px 4px;border:0;background:transparent;color:#9d0048;font:inherit;font-weight:700;cursor:pointer}
/* minicart: mesmo componente dentro do drawer do cesto */
.cv2sd-cartwrap{position:absolute;inset:0;z-index:30;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#f7f3ef;padding:14px 22px 0}
.cv2sd-cartwrap[hidden]{display:none}
.cv2sd-cartwrap .cv2sd__foot{margin:auto -22px 0}
@media (max-width:800px){
	.cv2sd__foot{margin:auto -14px 0;padding-left:14px;padding-right:14px}
	.cv2sd-cartwrap{padding:12px 14px 0}
	.cv2sd-cartwrap .cv2sd__foot{margin:auto -14px 0}
	html.cv2-kb .cv2sd__foot{position:static}
}
.cv2sd,.cv2sd__h,.cv2sd__cb,.cv2sd__lg,.cv2sd__o,.cv2sd__msg,.cv2sd__note,.cv2sd__sn{text-align:left}
.cv2sd__cp,.cv2sd__sp{text-align:right}
.cv2sd__q{margin:0 !important;max-width:100% !important;height:auto !important;box-shadow:none !important}
.cv2sd__srch{display:block;width:100%;min-width:0}
.cv2sd .cv2sd__q{width:100% !important;box-sizing:border-box !important;-webkit-appearance:none;appearance:none}
/* b10: aviso do checkout — morada noutro país que o destino escolhido */

/* b15: tipo na linha do título; datas a negrito; «quanto falta» por opção com a barra do minicart (cv2mc__bar), na largura do cartão */
.cv2sd__cz strong,.cv2sd__sn span strong{font-weight:700;color:#3b3236}
.cv2sd__cfs{grid-column:2 / -1;display:flex;flex-direction:column;gap:0;min-width:0;text-align:left}
.cv2sd__cft{font-size:12px;font-weight:600;color:#9d0048}
.cv2sd__fsb.cv2mc__bar{height:4px;margin-top:5px}
.cv2sd__sum{flex-wrap:wrap}
.cv2sd__sum .cv2sd__cfs{flex:1 0 100%}
.cv2sd__sum .cv2sd__sn{flex:1 1 0;min-width:0}
.cv2sd__sum .cv2sd__sp{flex:0 0 auto;max-width:45%}

/* b16: ponto de recolha CTT na sidebar (select2 do checkout) + aviso «Falta escolher o ponto» */
.cv2sd__pk{display:flex;flex-direction:column;gap:6px;margin-top:10px;padding:12px 14px;border:1px solid #e3d9d3;border-radius:12px;background:#fff}
.cv2sd__pkl{font-size:12px;font-weight:700;color:#3b3236}
.cv2sd__pk .select2-container{width:100%!important}
.cv2sd__pk .select2-container .select2-selection--single{height:40px;border:1px solid #cdb7c1;border-radius:8px}
.cv2sd__pk .select2-container .select2-selection--single .select2-selection__rendered{line-height:38px;font-size:13px}
.cv2sd__pk .select2-container .select2-selection--single .select2-selection__arrow{height:38px}
.cv2sd__pk .select2-dropdown{z-index:100001;border-color:#cdb7c1}
.cv2sd__pk .select2-results__option{font-size:13px}
.cv2sd__pks{width:100%;min-height:40px}
.cv2sd__pkm{margin:0;display:flex;flex-direction:column;gap:2px;font-size:12px;color:#4b4247}
.cv2sd__pkm strong{font-size:13px;color:#2d2529}
.cv2sd__pkm--warn,.cv2sd__spk--warn,.cv2-pk-miss{color:#9a5b00;font-weight:600}
.cv2sd__pk .cv2sd__note{margin:0}
.cv2sd__spk{font-size:12px;color:#4b4247}
.cv2-pk-miss{margin:6px 0 0;font-size:13px}
.cv2sd__pk .select2-container .select2-selection--single .select2-selection__rendered{font-size:13px!important;font-weight:600;color:#2d2529;padding-left:10px}
.cv2sd__pk .select2-search__field{font-size:14px}

/* b17: sidebar v2 — referência «1b · Comparar por data · linha temporal de entrega» (medidas/tipografia/cores da referência) */
@font-face{font-family:'Cv2sd Figtree';font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/cv2sd/figtree-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cv2sd Figtree';font-style:normal;font-weight:300 900;font-display:swap;src:url(/fonts/cv2sd/figtree-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cv2sd Garamond';font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/cv2sd/ebgaramond-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Cv2sd Garamond';font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/cv2sd/ebgaramond-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
.cv2sd-cartwrap{padding:26px 28px 0}
.cv2sd--v2{gap:22px;font-family:'Cv2sd Figtree',Figtree,system-ui,-apple-system,sans-serif;color:#2a1d22;font-size:14px;line-height:normal;-webkit-font-smoothing:antialiased}
.cv2sd--v2 *{box-sizing:border-box}
.cv2sd--v2 .cv2sd__back{min-height:0;margin:-8px 0;padding:8px 0;gap:4px;font-family:inherit;font-size:13.5px;font-weight:700;line-height:1.3;color:#9d0048}
.cv2sd--v2 .cv2sd__back:hover{color:#6e0233}
.cv2sd__hd{position:relative;display:flex;flex-direction:column;gap:10px}
.cv2sd--v2 .cv2sd__tt{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 10px;font-family:'Cv2sd Garamond','EB Garamond',Georgia,serif;font-size:32px;font-weight:400;line-height:1.1;letter-spacing:0;text-transform:none;color:#1d1417 !important;text-align:left}
.cv2sd--v2 .cv2sd__dest{display:flex;align-items:center;justify-content:flex-start;gap:6px;width:auto;min-height:0;padding:0;border:0;border-bottom:2px dotted #d9a9bd;border-radius:0;background:none;font:inherit;color:#9d0048;cursor:pointer;text-align:left}
/* o tema força a fonte dos botões (button{font-family:var(--cup-font-sans) !important}) */
.cv2sd--v2 .cv2sd__dest{font-family:'Cv2sd Garamond','EB Garamond',Georgia,serif !important}
.cv2sd--v2 .cv2sd__back,.cv2sd--v2 .cv2sd__apply,.cv2sd--v2 .cv2sd__geo,.cv2sd--v2 .cv2sd__q,.cv2sd--v2 .cv2sd__retry{font-family:'Cv2sd Figtree',Figtree,system-ui,-apple-system,sans-serif !important}
.cv2sd--v2 .cv2sd__dest:focus-visible{outline:2px solid #9d0048;outline-offset:2px}
.cv2sd--v2 .cv2sd__dh{display:inline;gap:0}
.cv2sd--v2 .cv2sd__dn{font-weight:400}
.cv2sd--v2 .cv2sd__chev{width:16px;height:16px;margin:0;border:0;transform:none;flex:none;transition:transform .15s}
.cv2sd--v2 .cv2sd__dest[aria-expanded=true] .cv2sd__chev{transform:rotate(180deg);margin:0}
.cv2sd--v2 .cv2sd__sub{margin:0;font-size:13.5px;line-height:1.4;color:#7a6870}
.cv2sd--v2 .cv2sd__sub[hidden]{display:none}
.cv2sd--v2 .cv2sd__pick{position:absolute;z-index:5;top:44px;left:0;width:100%;max-width:340px;padding:6px;border:0;border-radius:12px;background:#fff;box-shadow:0 18px 40px -12px rgba(60,0,25,.3);gap:6px}
.cv2sd--v2 .cv2sd__pick[hidden]{display:none}
.cv2sd--v2 .cv2sd__q{min-height:40px;border-color:#ece4e7;border-radius:8px;font-size:16px}
.cv2sd--v2 .cv2sd__list{max-height:min(46vh,320px)}
.cv2sd--v2 .cv2sd__o{min-height:40px;padding:0 12px;border-radius:8px;font-size:14px;font-weight:500;color:#1d1417}
.cv2sd--v2 .cv2sd__o:hover{background:#f7f1f3}
.cv2sd--v2 .cv2sd__o.is-on{background:#fbf0f4;color:#1d1417;font-weight:700}
.cv2sd--v2 .cv2sd__opts{gap:22px}
.cv2sd__tl{display:flex;flex-direction:column;gap:6px;padding:18px 18px 14px;border-radius:16px;background:#fff}
.cv2sd__ax{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding-bottom:4px;font-size:10.5px;font-weight:600;color:#9a8890}
.cv2sd__axt{position:relative;display:block;height:14px}
.cv2sd__axt span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap;line-height:14px}
.cv2sd--v2 .cv2sd__cards{display:flex;flex-direction:column;gap:6px}
.cv2sd--v2 .cv2sd__card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;margin:0 -8px 0 -10px;padding:12px 8px 12px 10px;border:0;border-radius:10px;background:transparent;box-shadow:none;cursor:pointer;text-align:left}
.cv2sd--v2 .cv2sd__card:hover{border:0;background:#fbf6f8}
.cv2sd--v2 .cv2sd__card.is-on{background:#fbf0f4;box-shadow:none}
.cv2sd--v2 .cv2sd__card:focus-visible{outline:2px solid #9d0048;outline-offset:1px}
.cv2sd--v2 .cv2sd__cb{display:flex;flex-direction:column;gap:2px;min-width:0}
.cv2sd--v2 .cv2sd__cn{font-size:14px;font-weight:700;color:#1d1417}
.cv2sd--v2 .cv2sd__pv{font-size:13px;font-weight:600;color:#5e4c53;font-variant-numeric:tabular-nums;white-space:nowrap}
.cv2sd--v2 .cv2sd__card.is-on .cv2sd__pv{color:#9d0048}
/* t-ship-dup 21/10: tipo de entrega visível (casa / ponto de recolha / com seguimento) */
.cv2sd--v2 .cv2sd__cs{font-size:11.5px;font-weight:500;line-height:1.25;color:#7a6870}
.cv2sd__trk{position:relative;display:block;height:42px;min-width:0}
/* t1466u (Jorge): track com borda */
.cv2sd__trb{position:absolute;left:0;right:0;top:12px;height:10px;border-radius:5px;border:1px solid #cacaca;background:#f1e6ea}
.cv2sd__bar{position:absolute;top:12px;height:10px;border-radius:5px;background:#d9c3cc}
.cv2sd__card.is-on .cv2sd__bar{background:#9d0048}
.cv2sd__rg{position:absolute;top:28px;font-size:11.5px;font-weight:600;line-height:1.2;color:#7a6870;white-space:nowrap}
.cv2sd__card.is-on .cv2sd__rg{color:#9d0048}
.cv2sd__rg.is-r{left:auto !important;right:0}
/* t1465u: logo da transportadora + «Grátis a partir de» por baixo do preço */
.cv2sd__logo{display:block;width:auto;height:20px;max-width:100%;margin:0 0 3px;object-fit:contain;object-position:left center}
.cv2sd__pf{display:block;font-size:11px;font-weight:500;line-height:1.25;color:#9a8890;white-space:nowrap}
.cv2sd__axn{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:11.5px;color:#9a8890}
.cv2sd__axn span{flex:none;width:2px;height:12px;background:#1d1417}
.cv2sd--v2 .cv2sd__note{font-size:12px;color:#9a8890}
.cv2sd--v2 .cv2sd__pk{margin:0 0 4px;padding:12px;border:1px solid #f3ecef;border-radius:10px;background:#fff}
.cv2sd--v2 .cv2sd__foot{gap:12px;margin:auto -28px 0;padding:18px 28px calc(20px + env(safe-area-inset-bottom,0px));border-top:1px solid #ece4e7;background:#fff}
.cv2sd--v2 [data-cv2sd-sumsec][hidden]{display:none}
.cv2sd__fs{display:flex;align-items:center;gap:12px;font-size:12.5px;color:#5e4c53}
.cv2sd__fs .cv2sd__fsb{display:block;flex:1;height:5px;margin:0;border-radius:3px;background:#f1e6ea;overflow:hidden}
.cv2sd__fs .cv2sd__fsb>span{display:block;height:100%;background:#9d0048}
.cv2sd__fst{white-space:nowrap}
.cv2sd__fst b{font-weight:700;color:#1d1417}
.cv2sd--v2 .cv2sd__apply{display:flex;align-items:center;justify-content:space-between;gap:12px;height:56px;min-height:56px;padding:0 20px;border:0;border-radius:12px;background:#9d0048;color:#fff;font-family:inherit;font-size:15px;font-weight:700;line-height:1.25;cursor:pointer}
.cv2sd--v2 .cv2sd__apply:hover{background:#82003b}
.cv2sd--v2 .cv2sd__apply:focus-visible{outline:2px solid #1d1417;outline-offset:2px}
.cv2sd--v2 .cv2sd__apply[disabled]{background:#cdb7c1;cursor:not-allowed}
.cv2sd__al{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:1px;min-width:0;text-align:left}
.cv2sd__as{max-width:100%;overflow:hidden;font-size:12px;font-weight:500;opacity:.85;white-space:nowrap;text-overflow:ellipsis}
.cv2sd__as:empty{display:none}
.cv2sd__ap{font-variant-numeric:tabular-nums;white-space:nowrap}
.cv2sd--v2 .cv2sd__fn{font-size:11.5px;line-height:1.45;color:#9a8890;text-align:center}
@media (max-width:800px){
	.cv2sd-cartwrap{padding:20px 20px 0}
	.cv2sd--v2 .cv2sd__foot{margin:auto -20px 0;padding:16px 20px calc(16px + env(safe-area-inset-bottom,0px))}
	.cv2sd-cartwrap .cv2sd--v2 .cv2sd__foot{margin:auto -20px 0}
}
.cv2sd--v2 .cv2sd__pk .select2-container,.cv2sd--v2 .cv2sd__pk .select2-container *,.cv2sd--v2 .cv2sd__pk .select2-dropdown,.cv2sd--v2 .cv2sd__pk .select2-search__field{font-family:'Cv2sd Figtree',Figtree,system-ui,-apple-system,sans-serif !important}
.cv2sd--v2 .cv2sd__pk .select2-container .select2-selection--single .select2-selection__rendered{font-size:13px !important;font-weight:700;color:#1d1417}
.cv2sd--v2 .cv2sd__pkl{font-size:12px;font-weight:700;color:#1d1417}
.cv2sd--v2 .cv2sd__pkm{font-size:12px;color:#5e4c53}
/* b19 20/10 (Jorge): borda suave na opção de transporte selecionada; borda transparente nas outras (sem salto de layout) */
.cv2sd--v2 .cv2sd__card,.cv2sd--v2 .cv2sd__card:hover{border:1px solid transparent;padding:11px 7px 11px 9px}
.cv2sd--v2 .cv2sd__card:hover{border-color:rgba(157,0,72,.10)}
.cv2sd--v2 .cv2sd__card.is-on,.cv2sd--v2 .cv2sd__card.is-on:hover{border-color:rgba(157,0,72,.28);background:#fbf0f4}
/* b19 20/10 (Jorge): widget «quanto falta para portes grátis» (minicart + checkout) no estilo da sidebar b17 — só apresentação */
.cv2mc{background:#fff;border:1px solid rgba(157,0,72,.28);border-radius:12px;padding:12px 14px;color:#1d1417}
.cv2mc__fs{align-items:baseline}
.cv2mc__fst{font-weight:400;color:#5e4c53;min-width:0}
.cv2mc__fst strong{font-weight:700;color:#1d1417}
.cv2mc__fsv{font-size:11.5px;color:#9a8890;font-variant-numeric:tabular-nums}
.cv2mc__bar{height:4px;margin-top:8px;background:#f5eef1}
.cv2mc__dl{display:flex;flex-direction:column;gap:2px;margin-top:10px;padding-top:10px;border-top:1px solid #f3ecef;font-size:12.5px;line-height:1.4;color:#5e4c53;text-align:left}
.cv2mc__dl:first-child{margin-top:0;padding-top:0;border-top:0}
.cv2mc__ok+.cv2mc__dl,.cv2mc__warn+.cv2mc__dl{margin-top:8px}
.cv2mc__dc{font-size:13px;font-weight:700;color:#1d1417}
.cv2mc__dp{font-weight:400;color:#5e4c53}
.cv2mc__da{font-weight:600;color:#9d0048}
.cv2mc[data-state="free"] .cv2mc__dl{border-top-color:#dcefe3}
#cv2ship-checkout{background:#fff;border-color:rgba(157,0,72,.28);border-radius:12px}
#cv2ship-checkout .cv2mc__fs{font-size:13.5px}
@media (max-width:640px){
	.cv2mc{border:1px solid rgba(157,0,72,.28);background:#fff;padding:10px 12px;border-radius:12px}
	.cv2mc[data-state="free"]{background:#F1FAF4;border-color:#CFEBD8}
	.cv2mc--c{border:1px dashed #D9C6CF}
	.cv2mc__fsv{display:inline}
	.cv2mc__fst{font-size:13px}
	.cv2mc__bar{height:4px;margin-top:7px}
	.cv2mc__dl{flex-direction:row;flex-wrap:wrap;column-gap:6px;row-gap:1px;margin-top:8px;padding-top:8px;font-size:12px}
	.cv2mc__dc{font-size:12.5px}
	.cv2mc__dc+.cv2mc__dd::before{content:"·";margin-right:6px;color:#9a8890}
	.cv2mc__da{flex-basis:100%}
}
@media (max-width:640px){.cv2mc__fs{flex-wrap:wrap;column-gap:8px;row-gap:2px}.cv2mc__fst{white-space:normal;overflow:visible;text-overflow:clip}}
/* t1471u: «Punto de recogida» com borda/raio como os campos do checkout; painel do select2 vai para o <body> (js) para não ser cortado */
.cv2sd--v2 .cv2sd__pk .select2-container--default .select2-selection--single,.cv2sd__pk .select2-container--default .select2-selection--single{height:42px!important;border:1px solid #cacaca!important;border-radius:10px!important;background:#fff!important;box-sizing:border-box}
.cv2sd__pk .select2-container--default .select2-selection--single .select2-selection__rendered{border:0!important;height:40px!important;line-height:40px!important}
.cv2sd__pk .select2-container--default .select2-selection--single .select2-selection__arrow{height:40px!important}
.cv2sd__pk .select2-container--default.select2-container--focus .select2-selection--single,.cv2sd__pk .select2-container--default.select2-container--open .select2-selection--single{border-color:#9a8890!important}
.cv2sd__pk .select2-container--open.select2-container--below .select2-selection--single{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}
.cv2sd__pk .select2-container--open.select2-container--above .select2-selection--single{border-top-left-radius:0!important;border-top-right-radius:0!important}
.select2-container.cv2sd-s2drop{z-index:2147483647!important}
.cv2sd-s2drop .select2-dropdown{z-index:2147483647!important;border:1px solid #9a8890!important;border-radius:10px!important;background:#fff;overflow:hidden;box-sizing:border-box;box-shadow:0 8px 24px rgba(45,24,31,.14)}
.cv2sd-s2drop .select2-dropdown--below{border-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important}
.cv2sd-s2drop .select2-dropdown--above{border-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}
.cv2sd-s2drop .select2-search--dropdown{padding:8px}
.cv2sd-s2drop .select2-search--dropdown .select2-search__field{padding:8px 10px!important;font-size:16px!important;border:1px solid #cacaca!important;border-radius:8px!important;box-sizing:border-box;outline:0}
.cv2sd-s2drop .select2-results__option{font-size:13px;line-height:1.35;padding:8px 10px}
.cv2sd-s2drop .select2-results__option--highlighted[aria-selected]{background:#f1e6ea!important;color:#1d1417!important}
/* t1530u — modal «Preferências» simples: bloco «Enviar para» (cv2sd--s) = dropdown de país + cartões rádio (referência 28/10) */
.cv2sd--v2.cv2sd--s{gap:14px;min-height:0}
.cv2sd--s .cv2sd__hd{position:relative}
.cv2sd--v2.cv2sd--s .cv2sd__tt{display:block;margin:0 0 8px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:0;color:#6b6461}
.cv2sd--v2.cv2sd--s .cv2sd__dest{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:48px;margin-top:8px;padding:0 14px;border:1px solid #ece4df;border-radius:16px;background:#fff;font-family:inherit !important;font-size:15px;font-weight:500;color:#2a1d22}
.cv2sd--s .cv2sd__dh{display:flex;align-items:center;gap:10px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv2sd--s .cv2sd__pick{position:absolute;left:0;right:0;top:100%;z-index:5;margin-top:6px;max-height:320px;padding:8px;border:1px solid #ece4df;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(24,18,22,.12)}
.cv2sd--s .cv2sd__list{overflow-y:auto;min-height:0}
.cv2sd--s .cv2sd__o.is-on::after,.cv2sd--s .cv2sd__o[aria-selected=true]::after{content:"\2713";margin-left:auto;padding-left:8px;color:#a3004f;font-weight:700}
.cv2sd__cards--s{display:flex;flex-direction:column;gap:10px}
/* t1576u: cartoes do modal Preferencias = formato dos cartoes de transportadora do checkout (t1564u/t1566u/t1575u). Prefixo .cv2sd .cv2sd__card para vencer .cv2sd--v2 .cv2sd__card (grelha 120px, sem borda) que partia o cartao */
.cv2sd .cv2sd__cards:has(.cv2sd__card--s),.cv2sd__opts:has(> .cv2sd__card--s){gap:10px}
.cv2sd .cv2sd__card.cv2sd__card--s{display:flex;align-items:center;gap:14px;margin:0;padding:14px 16px;border:1px solid #e8e1dc;border-radius:14px;background:#fff;box-shadow:none;cursor:pointer;text-align:left}
.cv2sd .cv2sd__card.cv2sd__card--s:hover{border-color:#d9cfc9;background:#fff}
.cv2sd .cv2sd__card.cv2sd__card--s.is-on,.cv2sd .cv2sd__card.cv2sd__card--s.is-on:hover{background:#FAF0F4;border-color:var(--cv2-brand,#6E1F3E);box-shadow:0 0 0 1px var(--cv2-brand,#6E1F3E) inset}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__rd{flex:0 0 20px;width:20px;height:20px;border-radius:50%;border:2px solid #9ca3af;box-sizing:border-box;background:#fff}
.cv2sd .cv2sd__card.cv2sd__card--s.is-on .cv2sd__rd{border:6px solid var(--cv2-brand,#6E1F3E)}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__lb{flex:0 0 52px;width:52px;height:34px;border:1px solid #e8e1dc;border-radius:8px;background:#fff;box-sizing:border-box;display:flex;align-items:center;justify-content:center;overflow:hidden;margin:0}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__lb img{display:block;width:auto;height:auto;max-width:42px;max-height:20px;margin:0;position:static}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__lb--dhl{background:#fecc00;border-color:#fecc00}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__lb--dhl img{max-width:46px;max-height:14px}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__ct{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;min-width:0}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__cn{font-size:12.5px;font-weight:700;line-height:1.3;color:#1d1d1f}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__cs{font-size:12px;line-height:1.35;font-weight:400;color:#6b7280}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__pv,.cv2sd .cv2sd__card.cv2sd__card--s.is-on .cv2sd__pv{font-size:12px;line-height:1.35;font-weight:700;color:#1d1d1f}
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__pv--free,.cv2sd .cv2sd__card.cv2sd__card--s.is-on .cv2sd__pv--free{color:#166534}

/* t1542u: «gratis» a verde, resto do titulo escuro; icone da transportadora a esquerda das linhas de envio/entrega */
.cv2mc__ok .cv2mc__ot{color:#1f1a1c;}
.cv2mc__ok .cv2mc__fw{color:#166534;}
.cv2mc__dl{flex-direction:row;align-items:center;gap:12px;}
.cv2mc__dt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto;}
.cv2mc__ci{flex:none;display:inline-flex;align-items:center;justify-content:center;height:28px;min-width:40px;padding:0 8px;border-radius:6px;background:#fff;border:1px solid #ece4e8;box-sizing:border-box;color:#5e4c53;}
.cv2mc__ci img{display:block;width:auto;height:16px;}
.cv2mc__ci--dhl img{height:12px;}

/* t1554u: «Grátis» a verde no valor de Portes (resumo e gaveta); caixa de portes = icone da transportadora a esquerda + textos a direita, lado a lado */
.checkout-modern.checkout-v2 #cv2_shipping_strong .cv2-ship-alt.is-free,[data-cart-drawer-total=shipping].is-free{color:#166534;}
.cv2mc__dl{flex-wrap:nowrap;}
.cv2mc__dl>.cv2mc__ci{flex:0 0 auto;}
.cv2mc__dl>.cv2mc__dt{flex-direction:column;}
.checkout-modern.checkout-v2 .cv3-mark--ctt img{display:block;width:auto;height:14px;}

/* t1567u: logo da transportadora = mesmo tile dos cartoes t1564u (52x34, branco, borda fina, contain/centrado; DHL fundo amarelo) */
.cv2mc__dl{align-items:center;}
.cv2mc__ci,.cv2mc__dl>.cv2mc__ci{flex:0 0 52px;width:52px;min-width:52px;height:34px;padding:0;border:1px solid #e8e1dc;border-radius:8px;background:#fff;overflow:hidden;}
.cv2mc__ci img,.cv2mc__ci--dhl img{width:auto;height:auto;max-width:42px;max-height:20px;object-fit:contain;}
.cv2mc__ci--dhl-express{background:#fecc00;border-color:#fecc00;}
.cv2mc__ci--dhl-express img{max-width:46px;max-height:14px;}

/* t1569u: logo +10% (tile 52x34 -> 58x38, imagem proporcional) */
.cv2mc__ci,.cv2mc__dl>.cv2mc__ci{flex:0 0 58px;width:58px;min-width:58px;height:38px;}
.cv2mc__ci img,.cv2mc__ci--dhl img{max-width:47px;max-height:22px;}
.cv2mc__ci--dhl-express img{max-width:51px;max-height:16px;}

/* t1627u: modal Preferencias — linha de preco/limiar quebra dentro do cartao (anulava nowrap de .cv2sd--v2 .cv2sd__pv) */
.cv2sd .cv2sd__card.cv2sd__card--s .cv2sd__pv{white-space:normal;overflow-wrap:anywhere}
