/* Euro Pharmacy — NerionX default Brand Kit theme */
.variant-picker { margin: 1rem 0 1.25rem; display: grid; gap: 0.75rem; }
.variant-picker__label { display: block; font-size: 0.875rem; font-weight: 600; margin-bottom: 0.35rem; }
.variant-picker__select { width: 100%; max-width: 28rem; padding: 0.65rem 0.75rem; border: 1px solid var(--color-border, #ddd); border-radius: var(--corner-radius, 4px); font: inherit; background: #fff; }
.variant-picker__status { min-height: 1.25rem; margin: 0; font-size: 0.8125rem; color: var(--color-muted, #666); }
.variant-picker__matrix { margin-top: .5rem; }
.variant-picker__matrix summary { width: fit-content; cursor: pointer; color: var(--color-accent); font-size: .875rem; font-weight: 700; }
.variant-picker__table-wrap { margin-top: .75rem; overflow-x: auto; }
.variant-picker__table { width: 100%; min-width: 36rem; border-collapse: collapse; font-size: .8125rem; }
.variant-picker__table th, .variant-picker__table td { padding: .6rem; border: 1px solid var(--color-border, #ddd); text-align: left; }
.variant-picker__matrix-select { padding: .4rem .7rem; border: 1px solid var(--color-accent); border-radius: var(--corner-radius, 4px); background: transparent; color: var(--color-accent); cursor: pointer; }
.variant-picker__matrix-select[aria-pressed="true"] { background: var(--color-accent); color: var(--color-accent-contrast, #fff); }
.card__variants-note { display: block; font-size: 0.75rem; color: var(--color-muted, #666); margin-top: 0.25rem; }
.product__unavailable-country { margin: 0.5rem 0 0.9rem; padding: 0.6rem 0.8rem; font-size: 0.85rem; color: #8a1c1c; background: #fdecec; border: 1px solid #f5c2c2; border-radius: var(--corner-radius, 4px); }


.pagination { display: flex; align-items: center; justify-content: center; gap: 0.5rem; margin-top: 2.5rem; }
.pagination__item { min-width: 2.5rem; min-height: 2.5rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid color-mix(in srgb, var(--color-text), transparent 78%); border-radius: var(--corner-radius); color: var(--color-text); text-decoration: none; }
a.pagination__item:hover, a.pagination__item:focus-visible { border-color: var(--color-accent); color: var(--color-accent); }
.pagination__item--current { border-color: var(--color-accent); background: var(--color-accent); color: var(--color-accent-contrast, #fff); }
.pagination__ellipsis { min-width: 1.5rem; text-align: center; color: var(--color-muted); }

*, *::before, *::after { box-sizing: border-box; }
html, body { font-family: HansKendrick, var(--font-body), sans-serif; }
body { overflow-y: auto; }
body { margin: 0; font-size: 15px; line-height: 1.8; color: var(--color-text); background: var(--color-background); -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; }
h1, h2, h3 { font-family: var(--font-heading); line-height: 1.2; margin: 0 0 0.5em; }
ul[role="list"] { list-style: none; margin: 0; padding: 0; }
.page-width { max-width: var(--page-width); margin: 0 auto; padding: 0 1.25rem; }
.skip-link { position: absolute; top: -100%; left: 1rem; z-index: 100; background: var(--color-accent-accessible); color: var(--color-accent-accessible-contrast); padding: 0.5rem 1rem; border-radius: var(--corner-radius); }
.skip-link:focus { top: 0.5rem; }

/* Buttons */
.button { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; font-family: var(--font-body); font-size: 0.9375rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.02em; padding: 0.8rem 1.75rem; cursor: pointer; text-decoration: none; background: var(--color-accent-accessible); color: var(--color-accent-accessible-contrast); border: 1px solid var(--color-accent-accessible); border-radius: var(--corner-radius); transition: filter 0.15s ease, transform 0.15s ease; }
.button:hover { filter: brightness(0.93); transform: translateY(-1px); }
.button:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }
.nx-buttons--outline .button { background: transparent; color: var(--color-accent-accessible); }
.nx-buttons--outline .button:hover { background: var(--color-accent-accessible); color: var(--color-accent-accessible-contrast); }

/* Site header — EuroPharmacy two-row layout */
.site-header { position: relative; z-index: 50; background: #fff; font-family: HansKendrick, var(--font-body), sans-serif; }

/* Top bar: logo left, contact blocks right */
.topbar { background: linear-gradient(180deg, #f5f7f8 0%, #f1f2f3 100%); border-bottom: 1px solid #e2e2e2; font-size: 0.8125rem; }
.topbar__inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; min-height: 160px; padding: 0; }
.topbar__logo { display: inline-flex; align-items: center; flex-shrink: 0; text-decoration: none; line-height: 0; }
.topbar__logo-img { display: block; height: 32px; width: auto; max-width: none; }
.topbar__contacts { display: flex; align-items: center; gap: 3.25rem; margin-left: auto; flex-wrap: nowrap; justify-content: flex-end; }
.topbar__contact { display: flex; align-items: center; gap: 0.8rem; min-width: 0; flex-shrink: 0; }
.topbar__contact-icon { display: block; flex-shrink: 0; width: 44px; height: 44px; object-fit: contain; opacity: 0.58; }
.topbar__contact-copy { display: flex; flex-direction: column; gap: 0.125rem; min-width: 0; }
.topbar__contact-title { font-weight: 700; font-size: 1.0625rem; color: #012c6d; line-height: 1.2; white-space: nowrap; }
.topbar__contact-title--link { text-decoration: none; color: #012c6d; }
.topbar__contact-title--link:hover { color: var(--color-accent-accessible); }
.topbar__contact-sub { font-size: 0.75rem; color: #777; text-decoration: none; line-height: 1.3; white-space: nowrap; }
a.topbar__contact-sub:hover { color: var(--color-accent-accessible); }

/* Nav bar */
.header { background: #fff; border-bottom: 1px solid #d9d9d9; }
.header.is-scrolled { box-shadow: 0 2px 12px rgba(0,0,0,0.06); }
.header__inner { display: flex; align-items: center; gap: 1rem; min-height: 73px; padding-top: 0; padding-bottom: 0; }
.header__nav { display: flex; align-items: center; gap: 0.15rem; flex: 1; flex-wrap: wrap; }
.header__link { display: inline-flex; align-items: center; gap: 0.4rem; min-height: 48px; padding: 0 1rem; font-family: HansKendrick, var(--font-body), sans-serif; font-size: 0.875rem; font-weight: 400; text-decoration: none; border-radius: 0; color: #666; transition: background 0.15s ease, color 0.15s ease; white-space: nowrap; }
.header__link:hover { color: #555; }
.header__link--active { background: var(--color-header-nav-active); color: #fff !important; }
.header__caret { flex-shrink: 0; opacity: 0.65; margin-top: 1px; }
.header__link--active .header__caret { opacity: 1; }
.header__item--parent { position: relative; }
.header__item--parent:hover > .header__link,
.header__item--parent:focus-within > .header__link { background: var(--color-header-nav-active); color: #fff !important; }
.header__item--parent:hover > .header__link .header__caret,
.header__item--parent:focus-within > .header__link .header__caret { opacity: 1; }
.header__dropdown { position: absolute; top: 100%; left: 0; min-width: 18rem; padding: 0; background: var(--color-header-nav-active); border: 0; border-radius: 0; box-shadow: 0 12px 24px rgba(0,0,0,0.12); opacity: 0; visibility: hidden; transform: none; transition: opacity 0.15s ease, visibility 0.15s; z-index: 60; }
.header__item--parent:hover .header__dropdown, .header__item--parent:focus-within .header__dropdown { opacity: 1; visibility: visible; }
.header__dropdown-link { display: block; padding: 0.55rem 1rem; font-size: 0.875rem; font-family: HansKendrick, var(--font-body), sans-serif; text-decoration: none; color: #fff; border-radius: 0; border-bottom: 1px solid rgba(255, 255, 255, 0.35); white-space: nowrap; }
.header__dropdown-link:last-child { border-bottom: 0; }
.header__dropdown-link:hover { background: rgba(255, 255, 255, 0.08); color: #fff; }
.header__actions { display: flex; align-items: center; gap: 0.5rem; margin-left: auto; flex-shrink: 0; }
.header__account { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border: 2px solid #7d8388; border-radius: 0; color: #7d8388; text-decoration: none; transition: border-color 0.15s ease, color 0.15s ease; }
.header__account:hover { border-color: #888; color: #555; }
.header__cart-btn { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; color: #7d8388; text-decoration: none; transition: color 0.15s ease; }
.header__cart-btn:hover { color: #555; }
.header__action-icon { display: block; width: 23px; height: 23px; }
.header__action-icon--cart { width: 25px; height: 25px; }
.header__cart-badge { position: absolute; top: -0.25rem; right: -0.35rem; min-width: 1.05rem; height: 1.05rem; padding: 0 0.15rem; display: inline-flex; align-items: center; justify-content: center; font-size: 0.625rem; font-weight: 700; line-height: 1; border-radius: 999px; background: var(--color-logo-red); color: #fff; }
.header__toggle { display: none; background: #050505; border: 0; width: 48px; height: 48px; padding: 0 14px; cursor: pointer; margin-left: auto; }
.header__toggle span { display: block; width: 20px; height: 2px; background: #fff; margin: 4px 0; border-radius: 0; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.whatsapp { position: fixed; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); z-index: 90; display: grid; width: 56px; height: 56px; place-items: center; border-radius: 50%; background: #25d366; color: #fff; text-decoration: none; box-shadow: 0 10px 28px rgba(20, 92, 48, 0.28); transition: transform 0.18s ease, box-shadow 0.18s ease; }
.whatsapp:hover { color: #fff; transform: translateY(-3px); box-shadow: 0 14px 32px rgba(20, 92, 48, 0.34); }
.whatsapp:focus-visible { outline: 3px solid #fff; outline-offset: 3px; box-shadow: 0 0 0 6px rgba(37, 211, 102, 0.35), 0 14px 32px rgba(20, 92, 48, 0.34); }
.whatsapp__label { position: absolute; top: 50%; right: calc(100% + 11px); width: max-content; padding: 8px 12px; border-radius: 4px; background: #fff; color: #555; font-size: 13px; line-height: 1; opacity: 0; pointer-events: none; transform: translate(6px, -50%); visibility: hidden; box-shadow: 0 5px 18px rgba(0,0,0,0.16); transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease; }
.whatsapp__label::after { content: ""; position: absolute; top: 50%; left: 100%; border: 5px solid transparent; border-left-color: #fff; transform: translateY(-50%); }
.whatsapp:hover .whatsapp__label, .whatsapp:focus-visible .whatsapp__label { opacity: 1; transform: translate(0, -50%); visibility: visible; }
.whatsapp__icon { display: inline-flex; width: 100%; height: 100%; align-items: center; justify-content: center; border: 3px solid #fff; border-radius: inherit; color: inherit; }
.whatsapp__mark { display: block; width: 30px; height: 30px; }

/* Hero */
.hero { position: relative; overflow: hidden; min-height: 867px; background: linear-gradient(112deg, #423c70 0%, #263f6a 57%, #236079 100%); color: #fff; font-family: HansKendrick, var(--font-body), sans-serif; }
.hero::before { content: ""; position: absolute; z-index: 0; width: 620px; height: 620px; right: -58px; top: -58px; border-radius: 50%; background: linear-gradient(180deg, rgba(242,245,246,0.95), rgba(193,198,200,0.88)); }
.hero::after { content: ""; position: absolute; right: -30px; top: 0; width: 0; height: 0; border-left: 26px solid transparent; border-right: 26px solid transparent; border-top: 40px solid rgba(22,52,96,0.9); }
.hero__content { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(500px, 0.95fr); align-items: start; gap: 1.5rem; max-width: 1240px; min-height: 867px; padding: 0 16px; }
.hero__copy { position: relative; z-index: 2; width: 764px; max-width: none; padding-top: 229px; padding-bottom: 0; }
.hero__heading { display: flex; width: max-content; max-width: none; flex-direction: column; gap: 0; font-size: 89px; font-weight: 400; line-height: 1; margin: 0 0 69px; color: #fff; }
.hero__heading-line { display: block; white-space: nowrap; }
.hero__heading strong { font-weight: 700; }
.hero__text { width: 580px; max-width: none; font-size: 16px; font-weight: 300; line-height: 26px; color: rgba(255,255,255,0.9); margin: 0 0 55px; }
.hero__price { margin: 0 0 33px; font-size: 16px; font-weight: 500; line-height: 26px; color: #fff; }
.hero__media { align-self: end; display: flex; align-items: flex-end; justify-content: center; height: 100%; }
.hero__media img { display: block; width: auto; max-width: none; max-height: 744px; height: 86%; object-fit: contain; filter: drop-shadow(0 24px 48px rgba(0, 0, 0, 0.24)); transform: translate(-6px, 34px); }
.hero__button { min-width: 201px; min-height: 48px; padding: 18px 32px; border: 0; border-radius: 0; background: linear-gradient(135deg, #e0c043 0%, #ce6f02 100%); color: #fff; font-size: 12px; line-height: 12px; }
.hero__button:hover { filter: brightness(0.96); transform: none; }

/* Trust badges */
.trust { position: relative; z-index: 2; min-height: 228px; margin: 0; padding: 40px 0; background: #fff; }
.trust__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; max-width: 1140px; padding: 0; }
.trust__item { display: flex; min-width: 0; min-height: 146px; flex-direction: column; align-items: center; gap: 0; padding: 10px; text-align: center; background: transparent; border: 0; box-shadow: none; }
.trust__icon { display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; color: #54595f; line-height: 40px; flex: 0 0 40px; overflow: visible; }
.trust__icon svg { display: block; width: 40px; height: 40px; flex: none; fill: currentColor; }
.trust__item:first-child .trust__icon svg { width: 50px; }
.trust__item:nth-child(2) .trust__icon svg { width: 35px; }
.trust__copy { display: flex; width: 100%; min-height: 86px; flex-direction: column; align-items: center; gap: 0; }
.trust__title { display: block; margin: 15px 0; font-family: Tahoma, sans-serif; font-size: 16px; font-weight: 600; line-height: 2px; letter-spacing: 0; color: #222; }
.trust__text { width: 100%; max-width: none; margin: 0; font-family: HansKendrick, var(--font-body), sans-serif; font-size: 15px; color: #666; line-height: 27px; }

/* Product search */
.product-search { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); align-items: start; gap: 0; max-width: 1140px; min-height: 70px; padding: 0 0 10px; }
.product-search form { position: relative; z-index: 30; width: calc(100% - 20px); margin: 10px; }
.product-search__bar { position: relative; display: block; width: 100%; height: 40px; }
.product-search__input { display: inline-block; width: 100%; max-width: 100%; height: 40px; padding: 10px 65px 10px 15px; font: 14px/14px HansKendrick, sans-serif; color: #0a0a0a; background: #e2e2e2; border: 1px solid #a85f00; border-radius: 3px; }
.product-search__input::placeholder { color: rgba(10,10,10,0.3); font-style: italic; opacity: 1; }
.product-search__input[aria-expanded="true"] { border-radius: 3px 3px 0 0; background: #fff; }
.product-search__submit { position: absolute; top: 0; right: 0; display: inline-flex; width: 50px; height: 40px; align-items: center; justify-content: center; padding: 0 15px; color: #fff; background: #f00000; border: 0; border-radius: 0 2px 2px 0; cursor: pointer; }
.product-search__submit::before { position: absolute; top: 12px; right: 48px; display: block; width: 8px; height: 16px; border-top: 8px solid transparent; border-right: 8px solid #f00000; border-bottom: 8px solid transparent; content: ""; }
.product-search__submit svg { display: block; width: 20px; height: 26px; flex: none; fill: currentColor; }
.product-search__results { position: absolute; top: calc(100% + 3px); right: 0; left: 0; z-index: 45; max-height: 430px; overflow-y: auto; border: 1px solid #dedede; border-top: 3px solid #f00000; border-radius: 0 0 3px 3px; background: #fff; box-shadow: 0 15px 35px rgba(25, 31, 38, 0.18); }
.product-search__results[hidden] { display: none; }
.product-search__state { margin: 0; padding: 18px; color: #777; font-size: 13px; line-height: 1.5; text-align: center; }
.product-search__result { display: grid; grid-template-columns: 58px minmax(0, 1fr) auto; gap: 13px; align-items: center; min-height: 75px; padding: 9px 14px; border-bottom: 1px solid #ececec; color: #555; text-decoration: none; transition: background-color 0.14s ease; }
.product-search__result:last-child { border-bottom: 0; }
.product-search__result:hover, .product-search__result[aria-selected="true"] { background: #f5f5f5; color: #252525; }
.product-search__result-media { display: grid; width: 58px; height: 56px; place-items: center; overflow: hidden; background: #fafafa; color: #b7b7b7; }
.product-search__result-media img { display: block; width: 100%; height: 100%; object-fit: contain; }
.product-search__result-media svg { width: 21px; height: 21px; fill: currentColor; }
.product-search__result-copy { min-width: 0; }
.product-search__result-title { display: block; overflow: hidden; color: inherit; font-size: 14px; font-weight: 700; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.product-search__result-sku { display: block; margin-top: 4px; color: #999; font-size: 11px; line-height: 1.3; }
.product-search__result-price { color: #555; font-size: 13px; font-weight: 700; white-space: nowrap; }
.product-search__view-all { display: inline-flex; align-items: center; justify-content: center; gap: 5px; justify-self: center; min-width: 0; min-height: 0; margin-top: 10px; padding: 12px 24px; font-size: 15px; font-weight: 400; line-height: 15px; color: #fff; background: #54595f; text-decoration: none; }
.product-search.product-search .product-search__view-all { color: #fff; }
.product-search__view-all:hover { background: #43474b; }
.product-search__grid-icon { display: block; width: 13.125px; height: 15px; flex: 0 0 13.125px; fill: currentColor; }

/* Featured grid + cards */
.featured { padding: 0 0 70px; }
.featured__header { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: 1.75rem; }
.featured__heading { font-size: clamp(1.4rem, 2.6vw, 2rem); margin: 0; color: var(--color-navy); }
.featured__view-all { font-size: 0.9375rem; font-weight: 600; color: var(--color-accent-accessible); text-decoration: none; }
.featured__view-all:hover { text-decoration: underline; }
.featured__footer { text-align: center; margin-top: 72px; }
.featured__cta { min-width: 210px; background: #fff; color: #555; border: 1px solid #e1e1e1; font-weight: 400; text-transform: none; }
.featured__cta::after { content: "→"; margin-left: 0.6rem; }
.grid { display: grid; gap: 25px; }
.grid--2 { grid-template-columns: repeat(2, 1fr); }
.grid--3 { grid-template-columns: repeat(3, 1fr); }
.grid--4 { grid-template-columns: repeat(4, 1fr); }
.card { display: flex; flex-direction: column; min-height: 400px; height: 100%; text-decoration: none; background: #fff; border: 1px solid #eee; border-radius: 0; overflow: hidden; transition: box-shadow 0.2s ease, transform 0.2s ease; }
.card:hover { box-shadow: 0 10px 26px rgba(0,0,0,0.09); transform: translateY(-2px); }
.card__media { position: relative; height: 180px; overflow: hidden; background: #fff; }
.card__media img, .card__placeholder { width: 100%; height: 100%; object-fit: contain; padding: 0; }
.card__badge { position: absolute; top: 0.75rem; left: 0.75rem; padding: 0.25rem 0.625rem; font-size: 0.75rem; font-weight: 600; border-radius: 999px; background: var(--color-navy); color: #fff; }
.card__info { display: flex; flex: 1; flex-direction: column; padding: 0; text-align: center; }
.card__title { display: flex; align-items: flex-start; justify-content: center; min-height: 77px; margin: 0; padding: 25px 10px 12px; font-size: 1rem; font-weight: 700; line-height: 1; color: #272727; }
.card__rating { display: flex; align-items: center; justify-content: center; min-height: 26px; margin: 0; font-size: 0.75rem; color: var(--color-muted); }
.card__stars { color: #dda800; letter-spacing: 0.03em; font-size: 1.25rem; line-height: 1; }
.card__rating-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.price { min-height: 35px; margin: 0; display: flex; align-items: center; justify-content: center; color: #222; font-size: 0.875rem; font-weight: 700; }
.price__range { display: inline-flex; align-items: center; gap: 0.35rem; }
.price__amount { color: #222; font-weight: 700; padding: 0; border-radius: 0; font-size: 0.875rem; display: inline; }
.price__compare { color: var(--color-muted); font-size: 0.85rem; }
.price__range-label { font-size: 0.72rem; color: var(--color-muted); }
.card__cta { display: flex; align-items: center; justify-content: center; min-height: 38px; margin: auto 15px 15px; font-size: 0.875rem; font-weight: 400; line-height: 1; text-transform: uppercase; color: #fff; background: var(--color-accent); }
.card:hover .card__cta { color: #fff; background: #c96b00; text-decoration: none; }
.card__variants-note { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

/* Feature (image with text) */
.feature { max-width: 1140px; padding: 13px 10px 0; }
.feature__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 0; align-items: stretch; min-height: 613px; }
.feature__text { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 60px; }
.feature__heading { max-width: 430px; font-size: 2.125rem; line-height: 1; color: #000; }
.feature__body { max-width: 430px; color: #777; margin-bottom: 1.5rem; line-height: 1.8; }
.feature__media { min-height: 613px; background: #f1f1f1; overflow: hidden; }
.feature__media > img, .feature__fallback { width: 100%; height: 100%; }
.feature__media > img { object-fit: contain; }
.feature__fallback { display: flex; align-items: flex-end; justify-content: center; }
.feature__fallback img { width: 100%; height: 100%; max-height: 594px; object-fit: contain; object-position: center bottom; }
.feature .button { background: #fff; color: #555; border: 1px solid #e1e1e1; text-transform: none; font-weight: 400; }
.feature .button::after { content: "→"; }

/* Rich text (SEO) */
.rich-text { padding: 10px 0 50px; }
@media (min-width: 561px) { .rich-text__inner { max-width: 1120px; padding-left: 0; padding-right: 0; } }
.rich-text__heading { margin: 15px 0; font-size: 46px; line-height: 1.2; color: #222; }
.rich-text__body { max-width: none; color: #666; font-size: 15px; line-height: 27px; }
.rich-text__body h2, .rich-text__body h3 { margin: 15px 0; font-size: 34px; line-height: 1.2; color: #222; }
.rich-text__body p { margin: 15px 0; }
.rich-text__body ul { margin: 15px 0; padding-left: 1.35rem; }
.rich-text__mobile-detail { display: none; }
.rte p { margin: 0 0 0.9em; }

/* Product / collection / search / page / 404 */
.product { padding: 3rem 1.25rem 4rem; }
.product__grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 3rem; align-items: start; }
.product__media { aspect-ratio: 1 / 1; border-radius: var(--corner-radius); overflow: hidden; background: #f7f8fa; }
.product__media-button { position: relative; display: block; width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: zoom-in; }
.product__media img, .product__placeholder { width: 100%; height: 100%; object-fit: contain; padding: 1rem; }
.product__media-button img { transition: transform 220ms ease; }
.product__media-button:hover img { transform: scale(1.025); }
.product__media-button:focus-visible { outline: 2px solid #202020; outline-offset: -4px; }
.product__zoom-badge { position: absolute; top: 18px; right: 18px; display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #e0e0e0; background: rgba(255,255,255,0.94); color: #303030; opacity: 0; transform: translateY(4px); transition: opacity 160ms ease, transform 160ms ease; }
.product__zoom-badge svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; }
.product__media-button:hover .product__zoom-badge, .product__media-button:focus-visible .product__zoom-badge { opacity: 1; transform: translateY(0); }
.product__thumbnails { display: flex; gap: 10px; margin-top: 14px; padding: 2px; overflow-x: auto; scrollbar-width: thin; }
.product__thumbnail { display: grid; width: 78px; height: 78px; flex: 0 0 78px; place-items: center; padding: 4px; border: 1px solid #e4e4e4; background: #fff; cursor: pointer; transition: border-color 150ms ease, box-shadow 150ms ease; }
.product__thumbnail img { width: 100%; height: 100%; object-fit: contain; }
.product__thumbnail:hover, .product__thumbnail.is-active { border-color: #d63638; box-shadow: inset 0 0 0 1px #d63638; }
.product__thumbnail:focus-visible { outline: 2px solid #202020; outline-offset: 2px; }
.product-lightbox-open { overflow: hidden; }
.product-lightbox-open [data-nx-market-switcher] { visibility: hidden; }
body:has(.hero) [data-nx-market-switcher] { display: none !important; }
.product-lightbox[hidden] { display: none; }
.product-lightbox { position: fixed; z-index: 1000; inset: 0; display: grid; grid-template-rows: 64px minmax(0, 1fr) auto; background: rgba(10,10,11,0.97); color: #fff; }
.product-lightbox__toolbar { position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; min-height: 64px; padding: 0 18px 0 24px; border-bottom: 1px solid rgba(255,255,255,0.12); }
.product-lightbox__count { color: rgba(255,255,255,0.82); font-size: 0.875rem; font-variant-numeric: tabular-nums; letter-spacing: 0.04em; }
.product-lightbox__actions { display: flex; align-items: center; gap: 2px; }
.product-lightbox__tool, .product-lightbox__nav, .product-lightbox__image-button, .product-lightbox__thumbnail { padding: 0; border: 0; background: transparent; color: inherit; cursor: pointer; }
.product-lightbox__tool { display: grid; width: 44px; height: 44px; place-items: center; color: rgba(255,255,255,0.84); }
.product-lightbox__tool:hover { color: #fff; background: rgba(255,255,255,0.08); }
.product-lightbox__tool svg, .product-lightbox__nav svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.product-lightbox__tool:focus-visible, .product-lightbox__nav:focus-visible, .product-lightbox__image-button:focus-visible, .product-lightbox__thumbnail:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
.product-lightbox__stage { position: relative; display: grid; min-height: 0; grid-template-columns: 64px minmax(0, 1fr) 64px; align-items: stretch; overflow: hidden; }
.product-lightbox__image-button { display: grid; min-width: 0; min-height: 0; place-items: center; overflow: hidden; cursor: zoom-in; }
.product-lightbox__image { display: block; max-width: min(82vw, 1400px); max-height: calc(100vh - 178px); object-fit: contain; user-select: none; transition: transform 180ms ease; }
.product-lightbox__stage.is-zoomed { align-items: start; overflow: auto; }
.product-lightbox__stage.is-zoomed .product-lightbox__image-button { width: 175%; min-height: 175%; place-items: center; cursor: zoom-out; }
.product-lightbox__stage.is-zoomed .product-lightbox__image { max-width: none; max-height: none; width: min(1500px, 135vw); height: auto; }
.product-lightbox__nav { position: relative; z-index: 2; display: grid; min-height: 100%; place-items: center; color: rgba(255,255,255,0.72); }
.product-lightbox__nav:hover:not(:disabled) { color: #fff; background: rgba(255,255,255,0.05); }
.product-lightbox__nav:disabled { cursor: default; opacity: 0.2; }
.product-lightbox__thumbnails { display: flex; align-items: center; justify-content: center; gap: 9px; min-height: 114px; padding: 14px 24px; border-top: 1px solid rgba(255,255,255,0.12); overflow-x: auto; }
.product-lightbox__thumbnails[hidden] { display: none; }
.product-lightbox__thumbnail { width: 72px; height: 72px; flex: 0 0 72px; padding: 4px; border: 1px solid rgba(255,255,255,0.28); opacity: 0.62; }
.product-lightbox__thumbnail img { width: 100%; height: 100%; object-fit: contain; }
.product-lightbox__thumbnail:hover, .product-lightbox__thumbnail.is-active { border-color: #fff; opacity: 1; }
.product__title { font-size: clamp(1.6rem, 3vw, 2.25rem); margin-bottom: 0.5rem; color: var(--color-navy); }
.product__price .price { justify-content: flex-start; font-size: 1.15rem; }
.product__buy { display: flex; gap: 1rem; align-items: flex-end; margin: 1.5rem 0; flex-wrap: wrap; }
.variant-picker { margin: 1rem 0 1.25rem; }
.variant-picker__label { display: block; font-size: 0.875rem; font-weight: 600; margin-bottom: 0.35rem; }
.variant-picker__select { width: 100%; max-width: 28rem; padding: 0.65rem 0.75rem; border: 1px solid var(--color-border, #ddd); border-radius: var(--corner-radius); font: inherit; background: #fff; }
.product__qty-label { display: block; font-size: 0.8125rem; color: var(--color-muted); margin-bottom: 0.375rem; }
.product__qty-input { width: 5rem; padding: 0.7rem; font-size: 1rem; border: 1px solid #d8dbe3; border-radius: var(--corner-radius); }
.product__submit { flex: 1; min-width: 12rem; }
.product__summary { max-width: 42rem; margin-top: 1.25rem; color: #676767; line-height: 1.75; }
.variant-table-wrap { width: 100%; max-width: 980px; margin: 3rem auto 0; }
.variant-table { width: 100%; border-collapse: collapse; table-layout: fixed; color: #676767; font-size: 0.9375rem; line-height: 1.6; }
.variant-table th, .variant-table td { height: 91px; padding: 5px; border: 1px solid #e5e5e5; text-align: left; vertical-align: middle; }
.variant-table th { height: 35px; color: #666; font-weight: 600; }
.variant-table__thumbnail a, .variant-table__placeholder { display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; margin-left: 16px; overflow: hidden; }
.variant-table__thumbnail img, .variant-table__placeholder-svg { width: 80px; height: 80px; object-fit: contain; padding: 0; }
.variant-table__price { color: #555; font-weight: 700; }
.variant-table__quantity input { width: 60px; height: 22px; padding: 1px 5px; border: 1px solid #e5e5e5; border-radius: 0; color: #555; font: inherit; line-height: 1; text-align: center; }
.variant-table__action form { margin: 0; }
.variant-table__submit { width: 152px; min-height: 40px; padding: 0.55rem 0.5rem; border: 1px solid #202020; border-radius: 0; background: #d63638; color: #fff; font-size: 0.75rem; font-weight: 600; line-height: 1; }
.variant-table__submit:hover { background: #c72f31; filter: none; }
.variant-table__submit:disabled { cursor: not-allowed; opacity: 0.55; }
.product-tabs { max-width: 1120px; margin: 70px auto 80px; padding-top: 54px; border-top: 1px solid #222; }
.product-tabs__list { display: flex; align-items: center; justify-content: center; gap: 0; width: 100%; max-width: 980px; min-height: 100px; margin: 0 auto; padding: 0 180px; background: #f0edef; }
.product-tabs__tab { position: relative; flex: 0 0 auto; align-self: stretch; min-width: 0; padding: 0 16px; border: 0; border-radius: 0; background: transparent; color: #696969; font: inherit; font-size: 1.0625rem; white-space: nowrap; cursor: pointer; }
.product-tabs__tab::after { position: absolute; right: 0; bottom: 9px; left: 0; width: 0; height: 2px; margin: auto; background: #d73c43; content: ""; transition: width 160ms ease; }
.product-tabs__tab:hover, .product-tabs__tab:focus-visible, .product-tabs__tab.is-active { color: #262626; }
.product-tabs__tab.is-active::after { width: 100%; }
.product-tabs__tab:focus-visible { outline: 2px solid #202020; outline-offset: -4px; }
.product-tabs__panel { width: 100%; max-width: 740px; margin: 0 auto; padding: 14px 0 0; color: #646464; font-size: 0.9375rem; line-height: 1.8; }
.product-tabs__panel[hidden] { display: none; }
.product-tabs__panel h2, .product-tabs__panel h3, .product-tabs__panel h4 { color: #181818; }
.product-tabs__panel h2 { font-size: 1.25rem; }
.product-tabs__panel h3 { margin: 1.25rem 0 0.75rem; font-size: 0.9375rem; }
.product-tabs__empty { margin: 1.25rem 0; color: #777; }
.product-information { width: 100%; margin-top: 1.25rem; border-collapse: collapse; }
.product-information th, .product-information td { padding: 12px 16px; border: 1px solid #e4e4e4; text-align: left; vertical-align: top; }
.product-information th { width: 34%; background: #f7f5f6; color: #262626; font-weight: 600; }
.product-review { padding: 1.1rem 0; border-bottom: 1px solid #e7e7e7; }
.product-review__stars { margin: 0; color: #d3a000; font-size: 1.1rem; letter-spacing: 0.08em; }
.product-review__author { margin: 0.25rem 0; color: #222; font-weight: 600; }
.product-review__body { margin: 0; }
.product-review-form { width: 100%; margin-top: 16px; padding: 0; border: 0; }
.product-review-form__title { margin: 0 0 14px; color: #171717; font-size: 0.9375rem !important; font-weight: 700; line-height: 1.6; }
.product-review-form__privacy { margin: 0 0 32px; color: #646464; font-size: 0.875rem; line-height: 1.7; }
.product-review-form__required { color: #d63643; }
.product-review-form__fields { display: block; }
.product-review-form__fields label, .product-review-form__rating legend { color: #282828; font-size: 0.875rem; }
.product-review-form__rating { margin: 0 0 19px; padding: 0; border: 0; }
.product-review-form__rating legend { margin-bottom: 13px; font-weight: 700; }
.product-review-form__stars { display: flex; align-items: center; gap: 2px; min-height: 32px; }
.product-review-form__star { position: relative; display: inline-flex; width: 30px; height: 30px; align-items: center; justify-content: center; color: #cf7379 !important; cursor: pointer; }
.product-review-form__star input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.product-review-form__star-icon { font-size: 0; line-height: 1; pointer-events: none; }
.product-review-form__star-icon::before { font-size: 1.35rem; content: "☆"; }
.product-review-form__star.is-selected, .product-review-form__star.is-preview { color: #d63643 !important; }
.product-review-form__star.is-selected .product-review-form__star-icon::before, .product-review-form__star.is-preview .product-review-form__star-icon::before { content: "★"; }
.product-review-form__stars.is-previewing .product-review-form__star.is-selected:not(.is-preview) { color: #cf7379 !important; }
.product-review-form__stars.is-previewing .product-review-form__star.is-selected:not(.is-preview) .product-review-form__star-icon::before { content: "☆"; }
.product-review-form__star:has(input:focus-visible) { outline: 2px solid #202020; outline-offset: 2px; }
.product-review-form__review { display: block; margin-bottom: 28px; }
.product-review-form__fields textarea, .product-review-form__fields input[type="text"], .product-review-form__fields input[type="email"] { display: block; width: 100%; margin-top: 4px; padding: 10px 12px; border: 1px solid #e3e3e3; border-radius: 0; background: #fff; color: #333; font: inherit; }
.product-review-form__fields textarea { min-height: 202px; resize: vertical; }
.product-review-form__fields input[type="text"], .product-review-form__fields input[type="email"] { height: 61px; }
.product-review-form__identity { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; margin-bottom: 28px; }
.product-review-form__remember { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 20px; color: #646464 !important; line-height: 1.6; cursor: pointer; }
.product-review-form__remember input { width: 14px; height: 14px; margin: 4px 0 0; accent-color: #202020; }
.product-review-form__submit { width: 160px; min-height: 49px; padding: 0.75rem 1rem; border: 1px solid #111; border-radius: 0; background: #111; color: #fff; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; }
.product-review-form__submit:hover { background: #2b2b2b; filter: none; }
.product-review-form__message { margin: 12px 0 0; font-size: 0.875rem; }
.collection, .search-page, .page, .not-found { padding: 3rem 1.25rem 4rem; }
.collection__title, .search-page__title, .page__title { font-size: clamp(1.8rem, 4vw, 2.75rem); color: var(--color-navy); }
.search-page__bar { display: flex; gap: 0.75rem; max-width: 34rem; margin-bottom: 2.5rem; }
.search-page__input { flex: 1; padding: 0.75rem 1rem; font-size: 1rem; border: 1px solid #d8dbe3; border-radius: var(--corner-radius); }
.empty-state { color: var(--color-muted); padding: 3rem 0; text-align: center; }
.not-found { text-align: center; }
.not-found__code { font-size: clamp(4rem, 10vw, 7rem); font-weight: 800; margin: 0; color: #eef0f4; }

[data-nx-cookie-accept] { background: var(--color-accent-accessible) !important; color: var(--color-accent-accessible-contrast) !important; }

/* Footer */
.footer { background: var(--color-navy); color: #fff; margin-top: 0; }
.footer__grid { display: grid; grid-template-columns: 1.15fr repeat(4, 1fr); gap: 32px; min-height: 569px; padding-top: 130px; padding-bottom: 39px; }
.footer__logo-link { display: inline-flex; margin: 0 0 65px; line-height: 0; }
.footer__logo-img { width: 120px; height: auto; filter: brightness(0) invert(1); opacity: 0.92; }
.footer__text { color: rgba(255,255,255,0.72); max-width: 20ch; margin: 0 0 16px; font-size: 0.875rem; line-height: 1.75; }
.footer__help { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; color: rgba(255,255,255,0.72); font-size: 0.875rem; }
.footer__help a { color: inherit; text-decoration: none; }
.footer__help a:hover { color: #fff; }
.footer__payment { width: 172px; margin-top: 26px; }
.footer__payment-image { display: block; width: 100%; height: auto; }
.footer__heading { font-weight: 500; font-size: 1.125rem; margin: 0 0 18px; }
.footer__col { display: flex; flex-direction: column; gap: 5px; }
.footer__link { text-decoration: none; color: rgba(255,255,255,0.72); font-size: 0.875rem; line-height: 1.85; }
.footer__link:hover { color: var(--color-accent); }
.footer__bottom { border-top: 1px solid rgba(255,255,255,0.14); min-height: 51px; padding: 14px 0; }
.footer__copyright { display: flex; align-items: center; justify-content: space-between; color: rgba(255,255,255,0.58); font-size: 0.75rem; margin: 0 auto; }
.footer__heart { color: #cf2e2e; font-size: 1.1em; }

@media (hover: none) {
  .product__zoom-badge { opacity: 0.9; transform: none; }
}

/* Responsive */
@media (max-width: 900px) {
  .topbar__inner { flex-wrap: wrap; height: auto; min-height: auto; padding-top: 0.75rem; padding-bottom: 0.75rem; }
  .topbar__contacts { gap: 1.25rem; width: 100%; justify-content: flex-start; flex-wrap: wrap; }
  .topbar__contact { flex: 1 1 45%; min-width: 10rem; }
  .header__toggle { display: block; }
  .header__inner { position: relative; flex-wrap: wrap; }
  .header__actions { display: none; }
  .header__nav { position: absolute; z-index: 70; top: 100%; left: 1.25rem; right: 2.5rem; display: none; width: auto; order: 3; flex-direction: column; align-items: stretch; gap: 0; padding: 0; border: 0; margin: 0; background: #62cdcc; box-shadow: 0 12px 24px rgba(0,0,0,0.16); }
  .header__nav.is-open { display: flex; }
  .header__link { min-height: 48px; border-radius: 0; padding: 0 1.2rem; color: #23416b; }
  .header__link--active { background: #555a60; color: #fff; }
  .header__dropdown { position: static; display: none; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding: 0; margin: 0; min-width: 0; background: var(--color-header-nav-active); }
  .header__item--parent:focus-within .header__dropdown { display: block; }
  .header__dropdown-link { color: #fff; border-bottom: 1px solid rgba(255, 255, 255, 0.35); }
  .header__dropdown-link:last-child { border-bottom: 0; }
  .header__dropdown-link:hover { background: rgba(255, 255, 255, 0.08); color: #fff; }
  .hero, .hero__content { min-height: 620px; }
  .hero__content { grid-template-columns: 1fr 1fr; }
  .hero__copy { width: auto; max-width: 620px; padding-top: 138px; }
  .hero__heading { font-size: clamp(2.5rem, 6.5vw, 4rem); }
  .hero__text { width: auto; max-width: 58ch; margin-bottom: 2rem; }
  .hero__price { margin-bottom: 1.5rem; }
  .hero__media img { max-height: 530px; height: 82%; transform: translateY(18px); }
  .trust__grid { grid-template-columns: repeat(2, 1fr); }
  .product-search { grid-template-columns: minmax(0, 2fr) minmax(200px, 1fr); gap: 24px; padding-left: 1.25rem; padding-right: 1.25rem; }
  .grid--3, .grid--4 { grid-template-columns: repeat(2, 1fr); }
  .feature { padding-left: 1.25rem; padding-right: 1.25rem; }
  .feature__inner, .product__grid { grid-template-columns: 1fr; }
  .product-tabs__list { padding: 0 80px; }
  .feature__inner { min-height: auto; }
  .feature__media { min-height: 520px; }
  .footer__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
  body { font-size: 0.8125rem; line-height: 1.65; }
  .page-width { padding-left: 10px; padding-right: 10px; }
  .product { padding-top: 2rem; }
  .product__thumbnails { margin-top: 10px; }
  .product__thumbnail { width: 64px; height: 64px; flex-basis: 64px; }
  .product__zoom-badge { top: 10px; right: 10px; width: 38px; height: 38px; }
  .product-lightbox { grid-template-rows: 56px minmax(0, 1fr) auto; }
  .product-lightbox__toolbar { min-height: 56px; padding: 0 6px 0 14px; }
  .product-lightbox__tool { width: 42px; height: 42px; }
  .product-lightbox__stage { grid-template-columns: 44px minmax(0, 1fr) 44px; }
  .product-lightbox__image { max-width: calc(100vw - 88px); max-height: calc(100vh - 148px); }
  .product-lightbox__stage.is-zoomed .product-lightbox__image-button { width: 220%; min-height: 180%; }
  .product-lightbox__stage.is-zoomed .product-lightbox__image { width: 190vw; }
  .product-lightbox__thumbnails { justify-content: flex-start; min-height: 92px; padding: 10px 14px; }
  .product-lightbox__thumbnail { width: 62px; height: 62px; flex-basis: 62px; }
  .product-tabs { margin: 40px auto 50px; padding-top: 30px; }
  .product-tabs__list { justify-content: flex-start; min-height: 74px; padding: 0 14px; overflow-x: auto; }
  .product-tabs__tab { flex: 0 0 auto; min-width: max-content; padding: 0 16px; font-size: 0.9375rem; }
  .product-tabs__panel { padding: 14px 9px 0; }
  .product-review-form__identity { grid-template-columns: 1fr; gap: 18px; }
  .variant-table-wrap { max-width: 315px; margin-top: 2rem; overflow: visible; }
  .variant-table, .variant-table tbody, .variant-table tr, .variant-table td { display: block; width: 100%; }
  .variant-table { table-layout: auto; border: 1px solid #e5e5e5; }
  .variant-table thead { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
  .variant-table__row { border-bottom: 1px solid #e5e5e5; }
  .variant-table__row:last-child { border-bottom: 0; }
  .variant-table td { min-height: 35px; height: auto; padding: 5px; border: 0; border-bottom: 1px solid #e5e5e5; text-align: right; }
  .variant-table td:last-child { border-bottom: 0; }
  .variant-table td::before { content: attr(data-label); float: left; width: 44%; color: #666; font-weight: 600; text-align: left; text-transform: uppercase; }
  .variant-table td::after { content: ""; display: table; clear: both; }
  .variant-table__thumbnail { min-height: 91px !important; }
  .variant-table__thumbnail a, .variant-table__placeholder { margin: 0 0 0 auto; }
  .variant-table__quantity input { height: 22px; }
  .variant-table__action { min-height: 60px !important; padding: 10px 5px !important; }
  .variant-table__action form { margin-left: 0; }
  .variant-table__submit { width: 100%; }
  .topbar__inner { display: flex; flex-direction: column; justify-content: flex-start; gap: 18px; min-height: 203px; padding: 26px 9px 20px; }
  .topbar__logo { margin: 0 auto; }
  .topbar__logo-img { height: 17px; }
  .topbar__contacts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; gap: 4px; width: 100%; margin: 0; }
  .topbar__contact { flex-direction: column; gap: 4px; min-width: 0; text-align: center; }
  .topbar__contact-icon { width: 40px; height: 40px; }
  .topbar__contact-copy { align-items: center; width: 100%; }
  .topbar__contact-title { font-size: 0.86rem; white-space: normal; }
  .topbar__contact-sub { max-width: 100%; font-size: 0.64rem; line-height: 1.45; white-space: normal; overflow-wrap: anywhere; }
  .header__inner { min-height: 110px; padding-top: 9px; align-items: flex-start; }
  .header__toggle { margin-left: auto; }
  .header__nav { top: 57px; left: 9px; right: 43px; }
  .hero { display: none; }
  .trust { min-height: 270px; padding: 42px 0 28px; }
  .trust__grid { grid-template-columns: 1fr; gap: 26px; }
  .trust__item:nth-child(even) { display: none; }
  .trust__icon { width: 42px; height: 42px; }
  .trust__title { font-size: 0.9rem; }
  .trust__text { max-width: 320px; font-size: 0.74rem; line-height: 1.6; }
  .product-search { grid-template-columns: 1fr; gap: 20px; padding: 10px 19px 19px; }
  .product-search form { width: 100%; margin: 0; }
  .product-search__view-all { margin-top: 0; }
  .product-search__view-all { min-width: 195px; }
  .product-search__results { max-height: min(390px, 65vh); }
  .product-search__result { grid-template-columns: 52px minmax(0, 1fr); min-height: 68px; padding: 8px 10px; }
  .product-search__result-media { width: 52px; height: 50px; }
  .product-search__result-price { grid-column: 2; font-size: 12px; }
  .featured { padding: 0 20px 102px; }
  .grid--2, .grid--3, .grid--4 { grid-template-columns: 1fr; gap: 18px; }
  .card { min-height: 400px; }
  .featured__footer { margin-top: 40px; }
  .feature { padding: 30px 9px 51px; }
  .feature__text { padding: 48px 30px; text-align: center; align-items: center; }
  .feature__heading { font-size: 1.8rem; }
  .feature__body { font-size: 0.78rem; }
  .feature__media { min-height: 380px; }
  .feature__fallback img { max-height: 360px; }
  .rich-text { padding: 0 10px 70px; }
  .rich-text__heading { margin: 15px 0; font-size: 46px; line-height: 1.2; }
  .rich-text__body { color: #666; font-size: 15px; line-height: 27px; }
  .rich-text__body h2, .rich-text__body h3 { margin: 15px 0; font-size: 34px; line-height: 1.2; }
  .rich-text__body p { margin: 15px 0; }
  .rich-text__mobile-detail { display: inline; }
  .footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; min-height: 0; padding: 60px 20px 62px; }
  .footer__brand { grid-column: 1 / -1; margin-bottom: 17px; }
  .footer__col:last-child { grid-column: 1 / 2; }
  .footer__logo-link { display: flex; justify-content: center; margin: 0 0 42px; }
  .footer__logo-img { width: 104px; }
  .footer__text { max-width: 28ch; font-size: 13px; line-height: 27px; }
  .footer__help { font-size: 13px; line-height: 27px; }
  .footer__payment { width: min(300px, 100%); margin-top: 24px; }
  .footer__heading { font-size: 18px; line-height: 18px; margin-bottom: 18px; }
  .footer__link { font-size: 13px; line-height: 27px; overflow-wrap: anywhere; }
  .footer__copyright { flex-direction: column; justify-content: center; gap: 4px; font-size: 0.62rem; text-align: center; }
  .whatsapp { right: max(12px, env(safe-area-inset-right)); top: auto; bottom: max(16px, env(safe-area-inset-bottom)); width: 50px; height: 50px; }
  .whatsapp__label { display: none; }
}

/* Cart page — shared across marketplace themes */
.cart-page { padding: 2.5rem 0 4rem; }
.cart-page__title { font-family: var(--font-heading); font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 700; margin: 0 0 2rem; }
.cart-page__count { color: var(--color-muted); font-weight: 500; }
.cart-page__subtext { color: var(--color-muted); margin: 0.75rem 0 1.75rem; }
.cart-page__empty { text-align: center; padding: 4rem 1rem; }
.cart-page__grid { display: grid; gap: 3rem; }
@media (min-width: 900px) { .cart-page__grid { grid-template-columns: 1.6fr 1fr; align-items: start; } }
.cart-page__line { display: flex; gap: 1.25rem; padding: 1.25rem 0; border-bottom: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); }
.cart-page__line-media { width: 6rem; height: 7rem; flex-shrink: 0; border-radius: var(--corner-radius); overflow: hidden; background: color-mix(in srgb, var(--color-text) 6%, transparent); }
.cart-page__line-media img { width: 100%; height: 100%; object-fit: cover; }
.cart-page__line-body { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.cart-page__line-top { display: flex; justify-content: space-between; gap: 1rem; }
.cart-page__line-title { font-weight: 600; color: inherit; text-decoration: none; }
.cart-page__line-title:hover { color: var(--color-accent); }
.cart-page__line-sku { font-size: 0.75rem; color: var(--color-muted); margin-top: 0.25rem; }
.cart-page__line-actions { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 0.75rem; }
.cart-page__line-unit { color: var(--color-muted); font-size: 0.8125rem; font-weight: 600; }
.cart-page__line-subtotal { white-space: nowrap; }
.cart-page__qty { display: inline-flex; align-items: center; border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent); border-radius: 999px; }
.cart-page__qty button { border: 0; background: transparent; padding: 0.35rem 0.75rem; cursor: pointer; color: var(--color-muted); }
.cart-page__qty span { min-width: 2rem; text-align: center; font-size: 0.875rem; }
.cart-page__remove { border: 0; background: transparent; font-size: 0.875rem; color: var(--color-muted); text-decoration: underline; cursor: pointer; }
.cart-page__remove:hover { color: var(--color-accent); }
.cart-page__summary { position: sticky; top: 6rem; border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); padding: 1.5rem; background: var(--color-background); }
.cart-page__summary-title { font-family: var(--font-heading); font-size: 1.125rem; font-weight: 600; margin: 0 0 1rem; }
.cart-page__summary-rows { margin: 0; }
.cart-page__summary-row { display: flex; justify-content: space-between; gap: 1rem; font-size: 0.875rem; margin-bottom: 0.5rem; }
.cart-page__summary-row dt { color: var(--color-muted); margin: 0; }
.cart-page__summary-row dd { margin: 0; font-weight: 500; }
.cart-page__summary-total { display: flex; justify-content: space-between; font-weight: 700; font-size: 1rem; border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); margin-top: 1rem; padding-top: 1rem; }
.cart-page__checkout { display: block; width: 100%; margin-top: 1.5rem; text-align: center; text-decoration: none; }
.cart-page__continue { display: block; margin-top: 0.75rem; text-align: center; font-size: 0.875rem; color: var(--color-muted); }
.cart-page__muted { color: var(--color-muted); }
.cart-page__upsell-track { display: grid; gap: 0.75rem; }
.cart-page__upsell { display: flex; align-items: center; gap: 0.75rem; color: inherit; text-decoration: none; }
.cart-page__upsell img { width: 48px; height: 48px; border-radius: 6px; object-fit: cover; }
.cart-page__upsell-dots { display: none; }


/* Euro Pharmacy cart — screenshot-matched table and totals */
.cart-page--euro { max-width: 972px; padding: 50px 0 95px; color: #666; }
.cart-page--euro, .cart-page--euro * { box-sizing: border-box; }
.cart-page--euro .cart-page__empty { min-height: 460px; padding-top: 95px; }
.cart-page--euro .cart-page__continue-wrap { display: flex; justify-content: center; margin: 1px 0 19px; }
.cart-page--euro .cart-page__continue-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-width: 303px; min-height: 40px; padding: 10px 24px; border: 0; border-radius: 2px; background: #efad45; color: #fff; font-size: 14px; font-weight: 700; line-height: 20px; text-decoration: none; }
.cart-page--euro .cart-page__continue-button:hover { background: #df9c35; color: #fff; filter: none; }
.cart-page--euro .cart-page__continue-icon { display: inline-grid; width: 15px; height: 15px; place-items: center; border-radius: 50%; background: #fff; color: #efad45; font-size: 11px; font-weight: 700; line-height: 1; }
.cart-page--euro .cart-page__notices { display: grid; gap: 30px; margin-bottom: 66px; }
.cart-page--euro .cart-page__notice { min-height: 49px; margin: 0; padding: 13px 18px; border: 1px solid #e7e7e7; background: #fff; color: #666; font-size: 14px; line-height: 21px; text-align: center; }
.cart-page--euro .cart-page__notice-product { color: #99ad48; }
.cart-page--euro .cart-page__notice a { color: #666; text-decoration: none; }
.cart-page--euro .cart-page__table { border-bottom: 1px solid #e6e6e6; }
.cart-page--euro .cart-page__table-head,
.cart-page--euro .cart-page__line { display: grid; grid-template-columns: 34px 74px minmax(0, 1fr) 90px 130px 84px; column-gap: 16px; align-items: center; }
.cart-page--euro .cart-page__table-head { min-height: 48px; border-bottom: 1px solid #e6e6e6; color: #999; font-size: 12px; font-weight: 700; }
.cart-page--euro .cart-page__head-product { grid-column: 2 / 4; padding-left: 94px; }
.cart-page--euro .cart-page__line { min-height: 112px; padding: 12px 0; border-bottom: 1px solid #e6e6e6; }
.cart-page--euro .cart-page__remove { grid-column: 1; grid-row: 1; width: 20px; height: 34px; padding: 0; border: 0; background: transparent; color: #777; font-size: 25px; font-weight: 200; line-height: 1; text-decoration: none; cursor: pointer; }
.cart-page--euro .cart-page__remove:hover { color: #222; }
.cart-page--euro .cart-page__line-media { grid-column: 2; grid-row: 1; width: 74px; height: 72px; border: 0; border-radius: 0; background: #fff; }
.cart-page--euro .cart-page__line-media img { width: 100%; height: 100%; object-fit: contain; }
.cart-page--euro .cart-page__line-body,
.cart-page--euro .cart-page__line-top,
.cart-page--euro .cart-page__line-actions { display: contents; }
.cart-page--euro .cart-page__line-title { grid-column: 3; grid-row: 1; align-self: center; color: #666; font-size: 15px; font-weight: 400; line-height: 1.5; }
.cart-page--euro .cart-page__line-title:hover { color: #333; }
.cart-page--euro .cart-page__line-sku { display: none; }
.cart-page--euro .cart-page__line-unit { grid-column: 4; grid-row: 1; color: #555; font-size: 13px; font-weight: 700; white-space: nowrap; }
.cart-page--euro .cart-page__qty { grid-column: 5; grid-row: 1; display: grid; grid-template-columns: repeat(3, 1fr); width: 130px; min-height: 41px; border: 1px solid #e7e7e7; border-radius: 0; }
.cart-page--euro .cart-page__qty button { min-width: 0; padding: 0; border: 0; background: transparent; color: #666; font-size: 22px; font-weight: 300; }
.cart-page--euro .cart-page__qty span { display: grid; min-width: 0; place-items: center; color: #666; font-size: 16px; }
.cart-page--euro .cart-page__line-subtotal { grid-column: 6; grid-row: 1; color: #555; font-size: 13px; font-weight: 700; text-align: right; white-space: nowrap; }
.cart-page--euro .cart-page__toolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; min-height: 71px; padding: 15px 0; }
.cart-page--euro .cart-page__coupon { display: grid; grid-template-columns: 178px auto; gap: 10px; }
.cart-page--euro .cart-page__coupon input { width: 178px; height: 41px; padding: 10px 16px; border: 1px solid #e7e7e7; border-radius: 0; background: #fff; color: #555; font: inherit; font-size: 14px; }
.cart-page--euro .cart-page__coupon button,
.cart-page--euro .cart-page__update { min-height: 40px; padding: 0 16px; border: 0; border-radius: 0; background: #222; color: #fff; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.cart-page--euro .cart-page__coupon-status { grid-column: 1 / -1; color: #777; font-size: 12px; }
.cart-page--euro .cart-page__toolbar-actions { display: flex; align-items: center; gap: 28px; }
.cart-page--euro .cart-page__clear { padding: 12px 0; border: 0; background: transparent; color: #999; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.cart-page--euro .cart-page__update { background: #b9b9b9; }
.cart-page--euro .cart-page__totals { margin-top: 110px; }
.cart-page--euro .cart-page__totals h2 { margin: 0 0 18px; color: #252525; font-size: 21px; font-weight: 700; line-height: 1.4; }
.cart-page--euro .cart-page__totals-table { border: 1px solid #e5e5e5; }
.cart-page--euro .cart-page__totals-row { display: grid; grid-template-columns: 1fr 1fr; min-height: 47px; border-bottom: 1px solid #e5e5e5; color: #999; font-size: 12px; font-weight: 700; }
.cart-page--euro .cart-page__totals-row:last-child { border-bottom: 0; }
.cart-page--euro .cart-page__totals-row > :first-child { display: flex; align-items: center; padding: 15px 19px; }
.cart-page--euro .cart-page__totals-row > :last-child { display: flex; align-items: center; padding: 15px 18px; border-left: 1px solid #e5e5e5; color: #555; }
.cart-page--euro .cart-page__totals-row--shipping { min-height: 168px; }
.cart-page--euro .cart-page__shipping-copy { display: block !important; font-size: 14px; font-weight: 400; line-height: 1.6; }
.cart-page--euro .cart-page__shipping-copy p { margin: 0 0 8px; }
.cart-page--euro .cart-page__shipping-copy strong { color: #2a2a2a; }
.cart-page--euro .cart-page__shipping-radio { display: inline-block; width: 14px; height: 14px; margin-right: 10px; border: 2px solid #333; border-radius: 50%; box-shadow: inset 0 0 0 3px #fff; background: #333; vertical-align: -2px; }
.cart-page--euro .cart-page__checkout-wrap { display: flex; justify-content: flex-end; margin-top: 20px; }
.cart-page--euro .cart-page__checkout { width: auto; min-width: 206px; min-height: 40px; margin: 0; padding: 12px 22px; border: 0; border-radius: 0; background: #222; color: #fff; font-size: 12px; font-weight: 700; line-height: 16px; text-transform: uppercase; }
.cart-page--euro .cart-page__checkout:hover { background: #333; color: #fff; filter: none; }
.cart-page--euro .cart-page__upsells { width: min(1130px, calc(100vw - 40px)); margin: 30px 50% 0; transform: translateX(-50%); }
.cart-page--euro .cart-page__upsell-track { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 29px; }
.cart-page--euro .cart-page__upsell { display: flex; min-width: 0; aspect-ratio: 1 / 1.14; align-items: center; justify-content: center; overflow: hidden; border: 1px solid #e9e9e9; border-radius: 10px; background: #fff; color: inherit; text-decoration: none; }
.cart-page--euro .cart-page__upsell:first-child { background: #f1f1f1; }
.cart-page--euro .cart-page__upsell img { display: block; width: 88%; height: 88%; object-fit: contain; }
.cart-page--euro .cart-page__upsell-dots { display: flex; justify-content: center; gap: 12px; margin-top: 24px; }
.cart-page--euro .cart-page__upsell-dot { width: 12px; height: 4px; border-radius: 3px; background: #ccc; }
.cart-page--euro .cart-page__upsell-dot:nth-child(2) { width: 20px; background: #e74684; }
@media (max-width: 760px) {
  .cart-page--euro { width: 100%; padding: 32px 10px 64px; }
  .cart-page--euro .cart-page__continue-button { width: 100%; min-width: 0; }
  .cart-page--euro .cart-page__notices { gap: 14px; margin-bottom: 30px; }
  .cart-page--euro .cart-page__table-head { display: none; }
  .cart-page--euro .cart-page__line { grid-template-columns: 28px 72px minmax(0, 1fr); gap: 12px; min-height: 132px; }
  .cart-page--euro .cart-page__remove { grid-column: 1; grid-row: 1; }
  .cart-page--euro .cart-page__line-media { grid-column: 2; grid-row: 1; }
  .cart-page--euro .cart-page__line-body { display: flex; grid-column: 3; grid-row: 1; flex-direction: column; gap: 10px; }
  .cart-page--euro .cart-page__line-top { display: flex; flex-direction: column; gap: 6px; }
  .cart-page--euro .cart-page__line-actions { display: flex; align-items: center; justify-content: flex-start; gap: 12px; }
  .cart-page--euro .cart-page__line-title,
  .cart-page--euro .cart-page__line-subtotal,
  .cart-page--euro .cart-page__qty { grid-column: auto; grid-row: auto; }
  .cart-page--euro .cart-page__line-subtotal { text-align: left; }
  .cart-page--euro .cart-page__line-unit { display: none; }
  .cart-page--euro .cart-page__qty { width: 118px; }
  .cart-page--euro .cart-page__toolbar { align-items: stretch; flex-direction: column; }
  .cart-page--euro .cart-page__coupon { grid-template-columns: minmax(0, 1fr) auto; }
  .cart-page--euro .cart-page__coupon input { width: 100%; min-width: 0; }
  .cart-page--euro .cart-page__toolbar-actions { justify-content: space-between; gap: 16px; }
  .cart-page--euro .cart-page__totals { margin-top: 64px; }
  .cart-page--euro .cart-page__totals-row { grid-template-columns: 120px minmax(0, 1fr); }
  .cart-page--euro .cart-page__checkout { width: 100%; }
  .cart-page--euro .cart-page__upsells { width: 100%; margin-top: 30px; }
  .cart-page--euro .cart-page__upsell-track { grid-template-columns: none; grid-auto-columns: 145px; grid-auto-flow: column; gap: 14px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x proximity; }
  .cart-page--euro .cart-page__upsell { scroll-snap-align: start; }
}


/* Customer login — shared across marketplace themes */
.account-login { padding: 3rem 0 4.5rem; }
.account-login__card { max-width: 28rem; margin: 0 auto; }
.account-login__title { font-family: HansKendrick, var(--font-heading), sans-serif; font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 700; margin: 0 0 0.5rem; color: var(--color-navy, var(--color-text)); }
.account-login__lead { margin: 0 0 2rem; font-size: 0.9375rem; color: var(--color-muted); }
.account-login__link { color: var(--color-accent-accessible, var(--color-accent)); font-weight: 600; text-decoration: none; }
.account-login__link:hover { text-decoration: underline; }
.account-login__link--small { font-size: 0.8125rem; font-weight: 500; }
.account-login__form { display: flex; flex-direction: column; gap: 1.25rem; }
.account-login__field { display: block; }
.account-login__label { display: block; margin-bottom: 0.375rem; font-size: 0.875rem; color: var(--color-muted); }
.account-login__label-row { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
.account-login__input { width: 100%; padding: 0.8rem 1rem; font-family: inherit; font-size: 1rem; border: 1px solid #d8dbe3; border-radius: var(--corner-radius); background: var(--color-background); color: var(--color-text); }
.account-login__input:focus { outline: 2px solid color-mix(in srgb, var(--color-accent) 35%, transparent); border-color: var(--color-accent); }
.account-login__error { margin: 0; font-size: 0.875rem; color: #c0392b; }
.account-login__submit { width: 100%; margin-top: 0.25rem; }
.account-login__submit:disabled { opacity: 0.6; cursor: not-allowed; }


/* Customer account area — shared across marketplace themes */
.account-area { padding: 2.5rem 0 4.5rem; }
.account-area__header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; }
.account-area__title { font-family: HansKendrick, var(--font-heading), sans-serif; font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 700; margin: 0 0 1rem; color: var(--color-navy, var(--color-text)); }
.account-area__subtitle { font-size: 1.125rem; font-weight: 600; margin: 0 0 0.5rem; }
.account-area__signout { border: 0; background: transparent; font-size: 0.875rem; color: var(--color-muted); text-decoration: underline; cursor: pointer; }
.account-area__nav { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 2rem; padding-bottom: 1rem; border-bottom: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); }
.account-area__nav-link { display: inline-block; padding: 0.5rem 1rem; border-radius: 999px; font-size: 0.875rem; font-weight: 500; text-decoration: none; color: inherit; transition: background 0.15s ease; }
.account-area__nav-link:hover { background: color-mix(in srgb, var(--color-text) 6%, transparent); }
.account-area__nav-link.is-active { background: var(--color-navy, var(--color-text)); color: var(--color-background, #fff); }
.account-area__grid { display: grid; gap: 1rem; }
@media (min-width: 768px) { .account-area__grid { grid-template-columns: repeat(2, 1fr); } }
.account-area__card { border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); padding: 1.5rem; background: var(--color-background); }
.account-area__card--link { text-decoration: none; color: inherit; transition: border-color 0.15s ease; }
.account-area__card--link:hover { border-color: var(--color-accent); }
.account-area__name { font-size: 1.25rem; font-weight: 600; margin: 0.25rem 0; }
.account-area__email { margin: 0; font-size: 0.875rem; color: var(--color-muted); }
.account-area__stat { font-size: 2rem; font-weight: 700; margin: 0.25rem 0 0; }
.account-area__muted { margin: 0; font-size: 0.875rem; color: var(--color-muted); }
.account-area__loading, .account-area__empty, .account-area__message { font-size: 0.9375rem; color: var(--color-muted); }
.account-area__empty a { color: var(--color-accent); font-weight: 600; }
.account-area__list { display: flex; flex-direction: column; gap: 0.75rem; }
.account-area__list-item { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 1.25rem; border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); text-decoration: none; color: inherit; transition: border-color 0.15s ease; }
.account-area__list-item:hover { border-color: var(--color-accent); }
.account-area__list-item-body { min-width: 0; }
.account-area__list-item-title { font-weight: 600; margin: 0; }
.account-area__list-item-meta { margin: 0.25rem 0 0; font-size: 0.75rem; color: var(--color-muted); }
.account-area__list-item-side { text-align: right; flex-shrink: 0; }
.account-area__status { display: inline-flex; align-items: center; gap: 0.35rem; font-size: 0.75rem; color: var(--color-muted); margin-top: 0.25rem; }
.account-area__status-dot { width: 0.5rem; height: 0.5rem; border-radius: 50%; }
.account-area__back { display: inline-block; margin-bottom: 0.75rem; font-size: 0.875rem; color: var(--color-muted); text-decoration: underline; }
.account-area__order-id { font-family: monospace; font-size: 0.8125rem; color: var(--color-muted); margin: 0 0 1rem; }
.account-area__split { display: grid; gap: 2rem; }
@media (min-width: 900px) { .account-area__split { grid-template-columns: 1fr 1fr; align-items: start; } }
.account-area__form { display: flex; flex-direction: column; gap: 1rem; }
.account-area__form--narrow { max-width: 28rem; }
.account-area__form-title { font-weight: 600; margin: 0; }
.account-area__form-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; }
.account-area__cancel { border: 0; background: transparent; font-size: 0.875rem; text-decoration: underline; cursor: pointer; color: var(--color-muted); }
.account-area__address-card { padding: 1rem; border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); font-size: 0.875rem; }
.account-area__address-actions { display: flex; gap: 0.75rem; margin-top: 0.75rem; }
.account-area__address-actions button { border: 0; background: transparent; font-size: 0.75rem; text-decoration: underline; cursor: pointer; color: var(--color-muted); }
.account-area__address-actions button[data-nx-delete-address] { color: #c0392b; }
.account-area__privacy { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); max-width: 28rem; }
.account-area__secondary { width: 100%; background: transparent; color: inherit; border: 1px solid color-mix(in srgb, var(--color-text) 18%, transparent); }
.account-area__danger { width: 100%; margin-top: 0.5rem; padding: 0.75rem 1rem; border: 1px solid color-mix(in srgb, #c0392b 40%, transparent); border-radius: var(--corner-radius); background: transparent; color: #c0392b; cursor: pointer; font-size: 0.875rem; }
.account-area__success { margin: 0; font-size: 0.875rem; color: var(--color-accent); }
.account-area__error { margin: 0; font-size: 0.875rem; color: #c0392b; }
.account-area__line-items { margin: 1.5rem 0 0; padding: 0; list-style: none; }
.account-area__line-items li { display: flex; justify-content: space-between; gap: 1rem; padding: 0.5rem 0; border-bottom: 1px solid color-mix(in srgb, var(--color-text) 8%, transparent); font-size: 0.875rem; }


.order-status { max-width: 760px; margin: 0 auto; padding-top: 4rem; padding-bottom: 5rem; }
.order-status__card { padding: clamp(1.5rem,4vw,3rem); border: 1px solid color-mix(in srgb,currentColor 14%,transparent); border-radius: 12px; background: var(--color-background,#fff); }
.order-status__eyebrow { margin: 0 0 .5rem; color: var(--color-muted,#6b7280); font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.order-status__lead { color: var(--color-muted,#6b7280); }
.order-status__form { display: grid; gap: 1rem; margin-top: 2rem; }
.order-status__form label { display: grid; gap: .4rem; font-weight: 600; }
.order-status__form input { width: 100%; min-height: 44px; padding: .7rem .8rem; border: 1px solid color-mix(in srgb,currentColor 22%,transparent); border-radius: 6px; background: transparent; color: inherit; font: inherit; }
.order-status__message { margin: 0; color: #b42318; }
.order-status__result { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid color-mix(in srgb,currentColor 14%,transparent); }
.order-status__summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.order-status__summary div { display: grid; gap: .25rem; }
.order-status__summary span { color: var(--color-muted,#6b7280); font-size: .75rem; text-transform: uppercase; }
.order-status__shipment { margin-top: 1rem; padding: 1rem; border: 1px solid color-mix(in srgb,currentColor 12%,transparent); border-radius: 8px; }
.order-status__shipment a { color: var(--color-accent,currentColor); font-weight: 600; }
.order-status__feedback { margin-top: 1.5rem; padding: 1rem; border-radius: 8px; background: color-mix(in srgb,var(--color-accent,currentColor) 7%,transparent); }
.order-status__feedback h2 { margin: 0 0 .5rem; font-size: 1.15rem; }
.order-status__feedback p { margin: 0 0 .75rem; }
.order-status__feedback-items { display: flex; flex-wrap: wrap; gap: .6rem; }
.order-status__feedback-items a { color: var(--color-accent,currentColor); font-weight: 700; }
@media (max-width:640px) { .order-status__summary { grid-template-columns: 1fr; } }


.contact-page { display: grid; gap: 2rem; padding-top: 3rem; padding-bottom: 4.5rem; }
.contact-page__intro { max-width: 42rem; }
.contact-page__intro h1 { margin: .25rem 0 1rem; }
.contact-page__eyebrow { margin: 0; color: var(--color-accent); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.contact-page__form { display: grid; gap: 1rem; max-width: 42rem; }
.contact-page__form label { display: grid; gap: .375rem; font-size: .875rem; }
.contact-page__form input, .contact-page__form textarea { width: 100%; padding: .8rem 1rem; border: 1px solid color-mix(in srgb, currentColor 20%, transparent); border-radius: var(--corner-radius, 6px); background: var(--color-background, #fff); color: inherit; font: inherit; }
.contact-page__form input:focus, .contact-page__form textarea:focus { outline: 2px solid color-mix(in srgb, var(--color-accent) 35%, transparent); border-color: var(--color-accent); }
.contact-page__message { margin: 0; font-size: .875rem; }
.contact-page__message[data-state="error"] { color: #b42318; }


.blog-page, .blog-post { padding-top: 3rem; padding-bottom: 5rem; }
.blog-page__header, .blog-post > header { max-width: 48rem; margin-bottom: 2rem; }
.blog-page__eyebrow { margin: 0 0 .4rem; color: var(--color-accent); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.blog-page__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); gap: 1.25rem; }
.blog-card { padding: 1.5rem; border: 1px solid color-mix(in srgb, currentColor 12%, transparent); border-radius: var(--corner-radius, 6px); background: var(--color-background, #fff); }
.blog-card h2 { margin: .35rem 0 .75rem; font-size: 1.25rem; }
.blog-card h2 a { color: inherit; text-decoration: none; }
.blog-card__date { margin: 0; color: var(--color-muted); font-size: .75rem; }
.blog-card__link, .blog-post__back { color: var(--color-accent); font-weight: 700; text-underline-offset: .2em; }
.blog-post { max-width: 52rem; }
.blog-post__back { display: inline-block; margin-bottom: 2rem; }
.blog-post__content { font-size: 1.0625rem; line-height: 1.75; }

/* Euro Pharmacy customer account — screenshot-matched entry and authenticated shell */
.account-entry { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; max-width: 1240px; min-height: 530px; padding: 38px 0 76px; }
.account-entry__column { min-width: 0; padding: 0 15px; }
.account-entry__title { margin: 0 0 31px; color: #242424; font-size: 1.25rem; font-weight: 700; line-height: 1.35; text-align: center; }
.account-entry__form { display: block; }
.account-entry__field { display: block; margin-bottom: 29px; }
.account-entry__label { display: block; margin-bottom: 5px; color: #434343; font-size: 0.8125rem; line-height: 1.5; }
.account-entry__label span { color: #d13e49; }
.account-entry__input { display: block; width: 100%; height: 42px; padding: 7px 12px; border: 1px solid #e8e8e8; border-radius: 0; background: #fafafa; color: #333; font: inherit; }
.account-entry__input:focus { outline: 1px solid #777; outline-offset: 0; border-color: #777; }
.account-entry__remember { display: flex; align-items: center; gap: 10px; width: fit-content; margin: 45px 0 18px; color: #2d2d2d; font-size: 0.8125rem; font-weight: 700; cursor: pointer; }
.account-entry__remember input { width: 16px; height: 16px; margin: 0; accent-color: #222; }
.account-entry__submit { display: block; width: fit-content; min-width: 81px; min-height: 40px; padding: 0.65rem 1.2rem; border: 1px solid #222; border-radius: 0; background: #222; color: #fff; font-size: 0.75rem; font-weight: 700; text-transform: uppercase; }
.account-entry__submit:hover { background: #3a3a3a; filter: none; }
.account-entry__forgot { display: inline-block; margin-top: 16px; color: #777; font-size: 0.8125rem; text-decoration: none; }
.account-entry__forgot:hover { color: #222; text-decoration: underline; }
.account-entry__note, .account-entry__privacy { max-width: 600px; margin: -8px 0 18px; color: #777; font-size: 0.9375rem; line-height: 1.75; }
.account-entry__privacy { margin: 0 0 28px; }
.account-entry__register-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.account-entry__register-details[hidden] { display: none; }
.account-entry__register-details .account-entry__field { margin-bottom: 20px; }

.account-area { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 0 40px; align-items: start; max-width: 1180px; min-height: 347px; padding: 40px 0 60px; }
.account-area > .account-area__nav { grid-column: 1; grid-row: 1 / span 20; }
.account-area > :not(.account-area__nav) { grid-column: 2; }
.account-area__nav { display: flex; flex-direction: column; flex-wrap: nowrap; gap: 0; margin: 0; padding: 0; border: 0; }
.account-area__nav-link { display: flex; align-items: center; gap: 14px; width: 100%; min-height: 46px; padding: 10px 0; border: 0; border-radius: 0; background: transparent; color: #686868; font: inherit; font-size: 0.9375rem; font-weight: 400; line-height: 1.5; text-align: left; text-decoration: none; cursor: pointer; }
.account-area__nav-icon { display: block; width: 20px; height: 20px; flex: 0 0 20px; fill: none; stroke: #a7a7a7; stroke-width: 1.45; stroke-linecap: round; stroke-linejoin: round; }
.account-area__nav-link:hover, .account-area__nav-link.is-active { background: transparent; color: #252525; font-weight: 700; }
.account-area__nav-link:hover .account-area__nav-icon, .account-area__nav-link.is-active .account-area__nav-icon { stroke: #777; }
.account-area__content { color: #6c6c6c; font-size: 0.9375rem; line-height: 1.8; }
.account-area__content p { margin: 0 0 14px; }
.account-area__content a, .account-area__notice a { color: #777; text-decoration: underline; }
.account-area__addresses-intro { margin-bottom: 26px !important; }
.account-area__address-slots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 62px; }
.account-area__address-slot h2 { margin: 0 0 12px; color: #252525; font-size: 1.25rem; line-height: 1.4; }
.account-area__address-slot p { margin: 0; color: #777; font-style: italic; }
.account-area__address-slot .account-area__address-card { margin: 0; padding: 0; border: 0; }
.account-area__address-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 11px; }
.account-area__address-actions button, .account-area__add-address { padding: 0; border: 0; background: transparent; color: #777; font: inherit; text-decoration: none; cursor: pointer; }
.account-area__address-actions button:hover, .account-area__add-address:hover { color: #222; text-decoration: underline; }
.account-area__address-form { margin-top: 36px; padding-top: 28px; border-top: 1px solid #e7e7e7; }
.account-area__address-form[hidden] { display: none; }
.account-area__header { grid-column: 2; margin: 0; }
.account-area__header .account-area__title, .account-area > .account-area__title { display: none; }
.account-area__header > .account-area__signout { display: none; }
.account-area__list, .account-area__empty, .account-area__error, .account-area__loading, .account-area__split, .account-area__form, .account-area__privacy, .account-area__card, .account-area__back, .account-area__order-id { grid-column: 2; }
.account-area__empty, .account-area__notice { margin: 0; padding: 13px 18px; border: 1px solid #e7e7e7; color: #696969; background: #fff; font-size: 0.9375rem; }
.account-area__list-item, .account-area__card, .account-area__address-card { border-color: #e5e5e5; border-radius: 0; box-shadow: none; }
.account-area__split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 42px; }
.account-area__form { max-width: 700px; }
.account-area__form--narrow { max-width: 700px; }
.account-area__identity-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.account-area__field-help { display: block; margin-top: 5px; color: #777; font-size: 0.8125rem; font-style: italic; line-height: 1.6; }
.account-area__form .account-login__input { min-height: 44px; border-color: #e5e5e5; border-radius: 0; background: #fff; }
.account-area__form .account-login__submit, .account-area__secondary { width: fit-content; min-width: 120px; border-radius: 0; background: #222; color: #fff; }
.account-area__password { display: grid; gap: 18px; margin: 8px 0 6px; padding: 22px 0 0; border: 0; border-top: 1px solid #e5e5e5; }
.account-area__password legend { padding: 0 12px 0 0; color: #2a2a2a; font-size: 1rem; font-weight: 700; }
.account-area__privacy { max-width: 700px; }
.account-area__credit { margin-top: 20px; padding-top: 16px; border-top: 1px solid #e7e7e7; }
@media (max-width: 760px) {
  .account-entry { grid-template-columns: 1fr; gap: 48px; padding: 32px 9px 60px; }
  .account-entry__column { padding: 0; }
  .account-entry__register-details { grid-template-columns: 1fr; gap: 0; }
  .account-area { grid-template-columns: 1fr; gap: 24px; padding: 32px 9px 50px; }
  .account-area > .account-area__nav, .account-area > :not(.account-area__nav), .account-area__header, .account-area__list, .account-area__empty, .account-area__error, .account-area__loading, .account-area__split, .account-area__form, .account-area__privacy, .account-area__card, .account-area__back, .account-area__order-id { grid-column: 1; }
  .account-area > .account-area__nav { grid-row: auto; }
  .account-area__nav { padding-bottom: 18px; border-bottom: 1px solid #e7e7e7; }
  .account-area__split { grid-template-columns: 1fr; gap: 32px; }
  .account-area__address-slots { grid-template-columns: 1fr; gap: 32px; }
  .account-area__identity-grid { grid-template-columns: 1fr; gap: 0; }
}

.checkout-page { padding: 2.5rem 0 4rem; min-width: 0; --checkout-muted: #505866; --checkout-accent: #994000; --checkout-line: color-mix(in srgb, var(--color-text) 12%, transparent); }
.checkout-page, .checkout-page * { box-sizing: border-box; }
.checkout-page__intro { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 1.25rem; }
.checkout-page__eyebrow { margin: 0 0 0.35rem; color: var(--checkout-accent); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.checkout-page__title { font-family: var(--font-heading); font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 700; margin: 0; }
.checkout-page__trust { max-width: 28rem; margin: 0; color: var(--checkout-muted); font-size: 0.8125rem; text-align: right; }
.checkout-page__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; margin: 0 0 2.5rem; padding: 0; list-style: none; border-block: 1px solid var(--checkout-line); }
.checkout-page__steps li { display: flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.8rem; color: var(--checkout-muted); font-size: 0.78rem; font-weight: 600; }
.checkout-page__steps li + li { border-inline-start: 1px solid var(--checkout-line); }
.checkout-page__steps span { display: grid; width: 1.35rem; height: 1.35rem; place-items: center; border: 1px solid currentColor; border-radius: 50%; font-size: 0.68rem; }
.checkout-page__steps [aria-current="step"] { color: var(--checkout-accent); }
.checkout-page__access { margin: -1rem 0 2rem; padding: 1.25rem; border: 1px solid var(--checkout-line); border-radius: var(--corner-radius); background: color-mix(in srgb, var(--color-background) 94%, var(--color-text)); }
.checkout-page__access-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.checkout-page__access-heading .checkout-page__subtitle { margin-bottom: 0.35rem; }
.checkout-page__access-copy, .checkout-page__access-status { margin: 0; color: var(--checkout-muted); font-size: 0.8125rem; }
.checkout-page__access-status { text-align: right; }
.checkout-page__access-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; margin-top: 1rem; }
.checkout-page__access-option { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0.75rem; padding: 0.9rem; border: 1px solid var(--checkout-line); border-radius: var(--corner-radius); cursor: pointer; }
.checkout-page__access-option:has(input:checked) { border-color: var(--checkout-accent); box-shadow: 0 0 0 1px var(--checkout-accent); }
.checkout-page__access-option input { margin-top: 0.2rem; accent-color: var(--checkout-accent); }
.checkout-page__access-option strong, .checkout-page__access-option small { display: block; }
.checkout-page__access-option small { margin-top: 0.2rem; color: var(--checkout-muted); }
.checkout-page__inline-login { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; align-items: end; gap: 0.75rem; margin-top: 1rem; }
.checkout-page__inline-login[hidden] { display: none; }
.checkout-page__inline-login-error { grid-column: 1 / -1; margin: 0; }
.checkout-page__benefits-signin button { appearance: none; border: 0; padding: 0; background: transparent; color: var(--checkout-accent); font: inherit; text-decoration: underline; cursor: pointer; }
.checkout-page__subtitle { font-family: var(--font-heading); font-size: 0.75rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--checkout-muted); margin: 0 0 1rem; }
.checkout-page__lead { color: var(--checkout-muted); margin: 0.75rem 0 1.75rem; }
.checkout-page__empty, .checkout-page__success { text-align: center; padding: 4rem 1rem; }
.checkout-page__grid { display: grid; gap: 3rem; }
@media (min-width: 900px) { .checkout-page__grid { grid-template-columns: 1.4fr 1fr; align-items: start; } }
.checkout-page__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 2rem; }
.checkout-page__field--full { grid-column: 1 / -1; }
@media (max-width: 699px) { .checkout-page__access-heading { display: block; } .checkout-page__access-status { margin-top: 0.4rem; text-align: left; } .checkout-page__access-options, .checkout-page__inline-login { grid-template-columns: 1fr; } }
.checkout-page__billing-toggle { display: flex; align-items: center; gap: 0.625rem; margin: -0.75rem 0 2rem; font-size: 0.875rem; font-weight: 600; cursor: pointer; }
.checkout-page__billing-toggle input { width: 1rem; height: 1rem; accent-color: var(--checkout-accent); }
.checkout-page__optional { color: var(--checkout-muted); font-size: 0.72rem; font-weight: 400; }
.checkout-page .account-login__input[aria-invalid="true"] { border-color: #a33; box-shadow: 0 0 0 1px #a33; }
.checkout-page__field-error { display: block; margin-top: 0.35rem; color: #8a2d25; font-size: 0.75rem; }
.checkout-page__shipping-options { margin: 0 0 2rem; min-width: 0; }
.checkout-page__shipping-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.checkout-page__shipping-heading .checkout-page__subtitle { margin-bottom: 0.5rem; }
.checkout-page__shipping-status { margin: 0 0 1rem; color: var(--checkout-muted); font-size: 0.875rem; }
.checkout-page__shipping-retry { appearance: none; border: 0; padding: 0; background: transparent; color: var(--checkout-accent); font: inherit; font-size: 0.8125rem; text-decoration: underline; cursor: pointer; }
.checkout-page__shipping-retry:focus-visible { outline: 2px solid var(--checkout-accent); outline-offset: 3px; }
.checkout-page__shipping-groups { display: grid; gap: 1rem; min-width: 0; }
.checkout-page__shipping-group { min-width: 0; margin: 0; border: 1px solid color-mix(in srgb, var(--color-text) 14%, transparent); border-radius: var(--corner-radius); padding: 1rem; }
.checkout-page__shipping-group legend { max-width: 100%; padding: 0 0.35rem; font-weight: 600; overflow-wrap: anywhere; }
.checkout-page__shipping-context { margin: 0 0 0.75rem; color: var(--checkout-muted); font-size: 0.8125rem; }
.checkout-page__shipping-option { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: 0.25rem 0.75rem; padding: 0.875rem; border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: calc(var(--corner-radius) * 0.75); cursor: pointer; }
.checkout-page__shipping-option + .checkout-page__shipping-option { margin-top: 0.625rem; }
.checkout-page__shipping-option:has(input:checked) { border-color: var(--checkout-accent); background: color-mix(in srgb, var(--checkout-accent) 7%, var(--color-background)); }
.checkout-page__shipping-option input { margin: 0.2rem 0 0; accent-color: var(--checkout-accent); }
.checkout-page__shipping-option input:focus-visible { outline: 2px solid var(--checkout-accent); outline-offset: 3px; }
.checkout-page__shipping-method { min-width: 0; font-weight: 600; overflow-wrap: anywhere; }
.checkout-page__shipping-price { white-space: nowrap; font-weight: 600; }
.checkout-page__shipping-detail { grid-column: 2 / -1; color: var(--checkout-muted); font-size: 0.75rem; overflow-wrap: anywhere; }
.checkout-page__shipping-restricted { margin: 0; padding: 0.875rem; border: 1px solid color-mix(in srgb, #a33 35%, transparent); border-radius: var(--corner-radius); color: #8a2d25; font-size: 0.875rem; }
.checkout-page__substitution-summary { margin-top: 1rem; padding: 1rem; border-radius: var(--corner-radius); background: color-mix(in srgb, var(--checkout-accent) 7%, var(--color-background)); }
.checkout-page__substitution-summary h3 { margin: 0 0 0.5rem; font-size: 0.9375rem; }
.checkout-page__substitution-summary p { margin: 0.35rem 0 0; font-size: 0.8125rem; line-height: 1.45; }
.checkout-page__payment { border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); padding: 1rem 1.25rem; margin: 0 0 1rem; }
.checkout-page__payment-legend { padding: 0 0.25rem; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--checkout-muted); }
.checkout-page__method { display: flex; align-items: start; gap: 0.625rem; padding: 0.65rem 0; font-size: 0.9375rem; cursor: pointer; }
.checkout-page__method input { accent-color: var(--checkout-accent); width: 1rem; height: 1rem; flex-shrink: 0; }
.checkout-page__method span { display: grid; gap: 0.18rem; }
.checkout-page__method strong { font-weight: 650; }
.checkout-page__method small { color: var(--checkout-muted); font-size: 0.76rem; line-height: 1.4; }
.checkout-page__payment-loading { margin: 0; color: var(--checkout-muted); font-size: 0.875rem; }
.checkout-page__payment-note { margin: 0 0 1.5rem; padding: 1rem 1.25rem; border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); font-size: 0.8125rem; color: var(--checkout-muted); background: var(--color-background); }
.checkout-page .button { background: var(--checkout-accent); border-color: var(--checkout-accent); color: #fff; }
.checkout-page__submit { width: 100%; margin-top: 0.5rem; }
.checkout-page__submit:disabled { opacity: 0.6; cursor: not-allowed; }
.checkout-page__submit-note { margin: 0.65rem 0 0; color: var(--checkout-muted); font-size: 0.75rem; text-align: center; }
.checkout-page__summary { position: sticky; top: 6rem; border: 1px solid var(--checkout-line); border-radius: var(--corner-radius); padding: 1.5rem; background: color-mix(in srgb, var(--color-background) 96%, var(--checkout-accent)); box-shadow: 0 1.25rem 3rem color-mix(in srgb, var(--color-text) 8%, transparent); }
.checkout-page__summary-title { font-family: var(--font-heading); font-size: 1.125rem; font-weight: 600; margin: 0 0 1rem; }
.checkout-page__line { display: flex; align-items: center; gap: 0.75rem; padding: 0.5rem 0; font-size: 0.875rem; }
.checkout-page__line-title { flex: 1; min-width: 0; }
.checkout-page__line-qty { color: var(--checkout-muted); font-size: 0.75rem; }
.checkout-page__summary-rows { margin: 1rem 0 0; }
.checkout-page__summary-row { display: flex; justify-content: space-between; gap: 1rem; font-size: 0.875rem; margin-bottom: 0.5rem; }
.checkout-page__summary-row[hidden] { display: none; }
.checkout-page__summary-row dt { color: var(--checkout-muted); margin: 0; }
.checkout-page__summary-row dd { margin: 0; font-weight: 500; }
.checkout-page__summary-total { display: flex; justify-content: space-between; font-weight: 700; font-size: 1rem; border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); margin-top: 1rem; padding-top: 1rem; }
.checkout-page__promo { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); }
.checkout-page__promo-row { display: flex; gap: 0.5rem; margin-top: 0.5rem; }
.checkout-page__promo-row .account-login__input { flex: 1; }
.checkout-page__promo-btn { flex-shrink: 0; }
.checkout-page__promo-msg { margin: 0.5rem 0 0; font-size: 0.75rem; }
.checkout-page__benefits-signin { margin: 1rem 0 0; padding-top: 1rem; border-top: 1px solid var(--checkout-line); color: var(--checkout-muted); font-size: 0.78rem; }
.checkout-page__benefits-signin a { color: var(--checkout-accent); font-weight: 600; }
.checkout-page__balance { color: var(--checkout-muted); font-size: 0.7rem; font-weight: 400; }
.checkout-page__muted { color: var(--checkout-muted); }
body[data-nx-checkout-active] { --checkout-accent: #994000; }
body[data-nx-checkout-active] [data-nx-cookie-accept] { background: var(--checkout-accent, #994000) !important; color: #fff !important; }
body[data-nx-checkout-active] .topbar__contact-sub,
body[data-nx-checkout-active] .header__link { color: #666 !important; }
body[data-nx-checkout-active] .footer-help__link,
body[data-nx-checkout-active] .footer-help__phone { color: #7a3300 !important; }
@media (max-width: 599px) {
  .checkout-page { width: 100%; max-width: 100%; padding-inline: 0.5rem; overflow-wrap: anywhere; }
  .checkout-page__intro { align-items: start; flex-direction: column; gap: 0.6rem; }
  .checkout-page__trust { text-align: start; }
  .checkout-page__steps { margin-bottom: 1.5rem; }
  .checkout-page__steps li { align-items: center; flex-direction: column; gap: 0.3rem; padding-inline: 0.25rem; text-align: center; }
  .checkout-page__grid { gap: 1.5rem; }
  .checkout-page__summary { order: -1; position: static; }
  .checkout-page__fields { grid-template-columns: minmax(0, 1fr); }
  .checkout-page__field--full { grid-column: auto; }
  .checkout-page__submit { position: sticky; z-index: 4; bottom: max(0.5rem, env(safe-area-inset-bottom)); box-shadow: 0 0.75rem 2rem color-mix(in srgb, var(--color-text) 20%, transparent); }
  .checkout-page .account-login__input { width: 100%; min-width: 0; }
  .checkout-page .button { min-width: 0; max-width: 100%; padding-inline: 0.5rem; white-space: normal; overflow-wrap: anywhere; }
  .checkout-page__shipping-heading { align-items: flex-start; flex-direction: column; gap: 0; }
  .checkout-page__shipping-option { grid-template-columns: auto minmax(0, 1fr); }
  .checkout-page__shipping-price, .checkout-page__shipping-detail { grid-column: 2; }
  .checkout-page__promo-row { align-items: stretch; flex-direction: column; }
  .checkout-page__promo-btn { width: 100%; }
  body[data-nx-checkout-active] [data-nx-market-switcher] { position: static !important; inset: auto !important; width: calc(100% - 2rem); max-width: 20rem; margin: 1rem auto; box-sizing: border-box; }
  body[data-nx-checkout-active] [data-nx-market-switcher] label,
  body[data-nx-checkout-active] [data-nx-market-switcher] select { min-width: 0; max-width: 100% !important; }
  body[data-nx-checkout-active] [data-nx-cookie-consent] { position: static !important; inset: auto !important; width: 100%; box-sizing: border-box; overflow-wrap: anywhere; }
  body[data-nx-checkout-active] [data-nx-cookie-consent] > div { max-width: 100% !important; min-width: 0; }
  body[data-nx-checkout-active] .topbar__logo,
  body[data-nx-checkout-active] .topbar__logo-img,
  body[data-nx-checkout-active] .topbar__contacts,
  body[data-nx-checkout-active] .topbar__contact,
  body[data-nx-checkout-active] .topbar__contact-copy { min-width: 0 !important; max-width: 100%; }
  body[data-nx-checkout-active] .topbar__logo-img { width: 100%; height: auto; }
  body[data-nx-checkout-active] .topbar__contacts { align-items: stretch; gap: 0.5rem; width: 100%; }
  body[data-nx-checkout-active] .topbar__contact { flex: 1 1 auto; width: 100%; }
  body[data-nx-checkout-active] .topbar__contact-title,
  body[data-nx-checkout-active] .topbar__contact-sub { white-space: normal; overflow-wrap: anywhere; }
  body[data-nx-checkout-active] .footer-help__inner { align-items: stretch; flex-direction: column; min-width: 0; }
  body[data-nx-checkout-active] .footer-help__link,
  body[data-nx-checkout-active] .footer-help__phone { max-width: 100%; overflow-wrap: anywhere; }
  body[data-nx-checkout-active] .footer__grid { grid-template-columns: minmax(0, 1fr); }
  body[data-nx-checkout-active] .footer__col,
  body[data-nx-checkout-active] .footer__link { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  .checkout-page *, .checkout-page *::before, .checkout-page *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
}


.order-confirmation { padding: clamp(3rem, 8vw, 7rem) 1rem; }
.order-confirmation__card { max-width: 44rem; margin: 0 auto; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); border-radius: var(--corner-radius); background: var(--color-background); box-shadow: 0 1.5rem 4rem color-mix(in srgb, var(--color-text) 8%, transparent); }
.order-confirmation__eyebrow { margin: 0 0 0.5rem; color: var(--color-accent); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.order-confirmation__title { margin: 0; font-family: var(--font-heading); font-size: clamp(1.8rem, 4vw, 2.6rem); }
.order-confirmation__lead { margin: 0.8rem 0 0; color: var(--color-muted); line-height: 1.6; }
.order-confirmation__facts { margin: 2rem 0 0; padding: 1rem 0; border-block: 1px solid color-mix(in srgb, var(--color-text) 12%, transparent); }
.order-confirmation__facts div { display: flex; justify-content: space-between; gap: 1rem; }
.order-confirmation__facts div + div { margin-top: 0.65rem; }
.order-confirmation__facts dt { color: var(--color-muted); }
.order-confirmation__facts dd { margin: 0; font-weight: 650; text-align: end; overflow-wrap: anywhere; }
.order-confirmation__lines { display: grid; gap: 0.65rem; margin-top: 1.25rem; }
.order-confirmation__line { display: flex; justify-content: space-between; gap: 1rem; font-size: 0.875rem; }
.order-confirmation__instructions { margin: 1.5rem 0 0; padding: 1rem; border-radius: var(--corner-radius); background: color-mix(in srgb, var(--color-text) 5%, var(--color-background)); color: inherit; font: inherit; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.order-confirmation__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; margin-top: 1.75rem; }
.order-confirmation__continue { color: var(--color-muted); }

