:root {
  font-family: Arial, Helvetica, sans-serif;
  color: #181818;
  background: #fff;
  font-synthesis: none;
  font-size: 16px;
  --accent: #854a35;
  --line: #e8e8e8;
  --muted: #818181;
  --soft: #f6f6f5;
}
.cart-recommendations {
  padding-left: 0;
  padding-right: 0;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input,
select,
textarea {
  font: inherit;
}
button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}
button {
  cursor: pointer;
  color: inherit;
}
button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
button {
  border: 0;
  background: none;
}
button svg,
a svg {
  flex-shrink: 0;
}
button:focus-visible,
a:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 5px;
}
input,
select,
textarea {
  width: 100%;
  border: 1px solid #dcdcdc;
  background: #fff;
  padding: 13px 14px;
  border-radius: 3px;
  color: inherit;
  min-width: 0;
}
input:focus,
select:focus,
textarea:focus {
  outline: 1px solid #222;
  border-color: #222;
}
textarea {
  resize: vertical;
  min-height: 90px;
}
label {
  display: flex;
  flex-direction: column;
  gap: 9px;
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 18px;
}
h1,
h2,
h3,
p {
  margin-top: 0;
}
h1 {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: -1.25px;
  font-weight: 500;
}
h2 {
  font-size: 28px;
  letter-spacing: -0.7px;
  line-height: 1.2;
  font-weight: 500;
}
h3 {
  font-size: 17px;
  font-weight: 600;
}
p {
  line-height: 1.65;
}
img {
  display: block;
  width: 100%;
  height: auto;
}
svg {
  vertical-align: middle;
}
small {
  font-size: 12px;
}
.muted {
  color: var(--muted);
}
.accent {
  color: var(--accent);
}
.small-text {
  font-size: 13px;
}
.eyebrow {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.7px;
  line-height: 1.5;
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  background: #171717;
  color: #fff;
  min-height: 48px;
  padding: 15px 24px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
  border: 1px solid #171717;
  border-radius: 2px;
  transition: background 0.18s;
}
.button:hover {
  background: #363636;
}
.button.light {
  background: white;
  border-color: white;
  color: #171717;
}
.button.light:hover {
  background: #f0f0f0;
}
.button.outline {
  color: #222;
  background: white;
  border-color: #ddd;
}
.button.small {
  min-height: 38px;
  padding: 9px 14px;
  font-size: 13px;
}
.icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  position: relative;
  padding: 5px;
}
.text-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  text-decoration: underline;
  text-underline-offset: 4px;
  padding: 0;
}
.underlink {
  display: inline-flex;
  gap: 15px;
  align-items: center;
  border-bottom: 1px solid;
  padding-bottom: 6px;
  font-size: 14px;
}
.skip {
  position: fixed;
  top: -60px;
  background: white;
  z-index: 200;
  padding: 15px;
}
.skip:focus {
  top: 0;
}
.mobile-only {
  display: none !important;
}
.top-strip {
  background: #1b1b1b;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 35px;
  font-size: 11px;
  letter-spacing: 0.15px;
  height: 30px;
}
.top-strip a {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #d4d4d4;
}
header {
  position: relative;
  background: #fff;
  z-index: 30;
  border-bottom: 1px solid var(--line);
}
.header-main {
  height: 92px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1536px;
  margin: auto;
  padding: 0 48px;
  position: relative;
}
.logo {
  font-weight: 700;
  font-size: 42px;
  letter-spacing: -2.8px;
  line-height: 1;
  position: relative;
  white-space: nowrap;
}
.logo span {
  font-size: 12px;
  letter-spacing: 0;
  position: absolute;
  right: -12px;
  top: 3px;
}
.header-main > .logo {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.audience {
  display: flex;
  gap: 22px;
  align-items: center;
  font-size: 13px;
}
.audience .active {
  border-bottom: 1px solid #222;
  padding: 8px 0;
}
.header-actions {
  display: flex;
  align-items: center;
  gap: 20px;
}
.bag-link {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 13px;
}
.header-actions small {
  background: var(--accent);
  color: white;
  border-radius: 50%;
  min-width: 17px;
  height: 17px;
  text-align: center;
  line-height: 17px;
  font-size: 10px;
}
.icon small {
  position: absolute;
  right: -2px;
  top: 0;
}
.nav-row {
  max-width: 1536px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 48px 20px;
  gap: 20px;
}
.nav-row nav {
  display: flex;
  gap: 26px;
  align-items: center;
  font-size: 13px;
  white-space: nowrap;
}
.nav-row nav button {
  display: flex;
  gap: 7px;
  align-items: center;
  padding: 0;
  font-size: 13px;
}
.search-trigger {
  font-size: 12px;
  background: #f5f5f5;
  min-width: 200px;
  color: #8a8a8a;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 2px;
}
.search-trigger svg {
  color: #222;
}
.mega {
  position: absolute;
  top: 100%;
  background: white;
  left: 0;
  right: 0;
  padding: 25px 48px 35px;
  box-shadow: 0 20px 30px #0002;
  z-index: 50;
  max-height: 80vh;
  overflow: auto;
  border-top: 1px solid var(--line);
}
.mega-title {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}
.mega-title > a {
  font-size: 22px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.mega-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}
.mega-grid section {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 13px;
}
.mega-hub {
  font-weight: 600;
  font-size: 15px;
  margin-bottom: 6px;
}
.mega a:hover {
  color: var(--accent);
}
.container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 32px 48px 70px;
}
.hero {
  display: grid;
  grid-template-columns: 46% 54%;
  height: 530px;
  max-width: 1536px;
  margin: auto;
  overflow: hidden;
}
.hero-copy {
  background: #202c23;
  color: #fff;
  padding: 60px 64px 35px;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  position: relative;
}
.hero-copy > .eyebrow {
  color: #d5dfd5;
  margin-bottom: 32px;
  font-size: 11px;
}
.hero-copy h1 {
  font-size: 68px;
  font-weight: 400;
  letter-spacing: -3px;
  margin-bottom: 22px;
  line-height: 1.02;
}
.hero-copy p {
  font-size: 15px;
  max-width: 270px;
  line-height: 1.55;
  color: #e1e7e0;
  margin-bottom: 30px;
}
.hero-copy .button {
  min-width: 175px;
  justify-content: space-between;
}
.hero-footnote {
  font-size: 10px;
  letter-spacing: 0.4px;
  color: #b9c7b8;
  margin-top: auto;
  padding-top: 28px;
}
.hero-visual {
  position: relative;
  background: #e9ebe5;
  overflow: hidden;
}
.hero-visual > img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
  transform: scale(0.93);
}
.hero-caption {
  position: absolute;
  bottom: 32px;
  left: 32px;
  right: 32px;
  border-top: 1px solid #26262640;
  padding-top: 14px;
  display: flex;
  justify-content: space-between;
  font-size: 14px;
}
.hero-number {
  position: absolute;
  right: 30px;
  top: 28px;
  font-size: 10px;
  letter-spacing: 2px;
}
.benefit-bar {
  display: flex;
  justify-content: center;
  gap: 100px;
  padding: 22px 30px;
  border-bottom: 1px solid var(--line);
  font-size: 12px;
}
.benefit-bar span {
  display: flex;
  align-items: center;
  gap: 12px;
}
.section {
  max-width: 1440px;
  margin: 0 auto;
  padding: 52px 48px 10px;
}
.section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}
.section-head h2 {
  margin: 0;
  font-size: 27px;
}
.section-head .eyebrow {
  margin-bottom: 10px;
  color: #888;
  font-size: 10px;
}
.section-head > a {
  display: flex;
  align-items: center;
  gap: 18px;
  font-size: 13px;
  white-space: nowrap;
}
.category-tiles {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 20px;
}
.category-tiles > a > div {
  background: #f5f5f3;
  aspect-ratio: 1;
  overflow: hidden;
}
.category-tiles img {
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
  transition: transform 0.4s;
  padding: 8px;
}
.category-tiles a:hover img {
  transform: scale(1.06);
}
.category-tiles span {
  display: flex;
  justify-content: space-between;
  gap: 6px;
  font-size: 13px;
  margin-top: 14px;
}
.product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px 22px;
}
.home-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.product-card {
  min-width: 0;
}
.card-image {
  position: relative;
  background: #f5f5f3;
  aspect-ratio: 0.83;
  overflow: hidden;
  margin-bottom: 15px;
}
.card-image > a {
  display: block;
  height: 100%;
}
.card-image img {
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
  padding: 8px;
  transition: transform 0.4s;
}
.card-image:hover img {
  transform: scale(1.035);
}
.favorite {
  position: absolute;
  right: 11px;
  top: 11px;
  background: white;
  border-radius: 50%;
  width: 34px;
  height: 34px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.favorite.selected {
  color: var(--accent);
}
.discount {
  position: absolute;
  left: 12px;
  bottom: 12px;
  background: white;
  padding: 5px 7px;
  color: var(--accent);
  font-size: 11px;
}
.card-prices {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-bottom: 7px;
  font-size: 15px;
}
.card-prices strong {
  font-weight: 600;
}
del {
  font-size: 12px;
  color: #939393;
}
.card-name {
  font-size: 13px;
  line-height: 1.65;
  display: block;
}
.card-name strong {
  font-weight: 600;
}
.card-meta {
  display: flex;
  gap: 10px;
  justify-content: space-between;
  font-size: 11px;
  color: #8a8a8a;
  margin-top: 8px;
  line-height: 1.4;
}
.stories {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding-top: 56px;
  padding-bottom: 55px;
}
.story {
  display: flex;
  background: #f1eee9;
  min-height: 340px;
  overflow: hidden;
  position: relative;
}
.story > div {
  padding: 34px 0 28px 30px;
  z-index: 1;
  width: 62%;
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
.story .eyebrow {
  font-size: 9px;
  margin-bottom: 24px;
}
.story h2 {
  font-size: 31px;
  line-height: 1.12;
  letter-spacing: -1px;
}
.story .underlink {
  font-size: 12px;
  margin-top: auto;
}
.story img {
  object-fit: contain;
  mix-blend-mode: multiply;
  width: 57%;
  margin-left: -16%;
  align-self: stretch;
  transform: translate(6%, 10%);
}
.story.second {
  background: #edf0ec;
}
.brand-note {
  text-align: center;
  background: #f7f7f6;
  padding: 60px 25px 64px;
  margin-top: 15px;
}
.brand-note .eyebrow {
  color: #666;
  font-size: 10px;
}
.brand-note h2 {
  font-size: 38px;
  max-width: 630px;
  margin: 22px auto 28px;
}
.brand-note a {
  font-size: 13px;
  display: inline-flex;
  gap: 14px;
  align-items: center;
}
.footer-top {
  display: flex;
  align-items: center;
  gap: 80px;
  margin-bottom: 45px;
}
.footer-top .logo {
  font-size: 48px;
}
.footer-top p {
  font-size: 13px;
  line-height: 1.7;
  margin: 0;
  color: #666;
}
footer {
  padding: 55px 48px 0;
  max-width: 1536px;
  margin: auto;
}
.footer-cols {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1.3fr;
  gap: 35px;
  padding-bottom: 40px;
}
.footer-cols h3 {
  font-size: 14px;
  margin-bottom: 22px;
}
.footer-cols a {
  display: block;
  font-size: 12px;
  margin-bottom: 15px;
  color: #555;
}
.footer-cols p {
  font-size: 12px;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  border-top: 1px solid var(--line);
  padding: 22px 0;
  color: #8b8b8b;
  font-size: 10px;
}
.breadcrumbs {
  font-size: 11px;
  display: flex;
  gap: 10px;
  align-items: center;
  color: #777;
  flex-wrap: wrap;
  margin-bottom: 26px;
}
.page-heading {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 22px;
}
.page-heading h1 {
  margin: 0;
}
.page-heading > span {
  font-size: 12px;
}
.chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 28px;
}
.chips a {
  font-size: 12px;
  border: 1px solid #e2e2e2;
  border-radius: 3px;
  padding: 10px 14px;
}
.chips a:hover {
  border-color: #333;
}
.catalog-layout {
  display: grid;
  grid-template-columns: 195px minmax(0, 1fr);
  gap: 35px;
}
.catalog-aside {
  padding-top: 14px;
}
.catalog-aside h3 {
  font-size: 15px;
  margin-bottom: 22px;
}
.catalog-aside > a {
  font-size: 12px;
  line-height: 1.5;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 0 0 17px;
  color: #555;
}
.catalog-aside > a.active {
  font-weight: 600;
  color: black;
}
.filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 25px;
  padding-bottom: 17px;
  border-bottom: 1px solid var(--line);
  font-size: 12px;
}
.filters select {
  width: auto;
  padding: 9px 22px 9px 10px;
  font-size: 12px;
  max-width: 180px;
  height: 37px;
}
.filter-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.filter-fields input[type="number"] {
  width: 84px;
  padding: 9px;
  font-size: 12px;
}
.check {
  flex-direction: row;
  align-items: flex-start;
  gap: 9px;
  line-height: 1.5;
  font-size: 12px;
  margin: 10px 0;
}
.check input {
  width: 15px;
  height: 15px;
  accent-color: #222;
  flex-shrink: 0;
  margin-top: 2px;
}
.filter-fields > a {
  font-size: 11px;
  color: #777;
}
.filter-fields .button {
  font-size: 11px;
}
.pagination {
  display: flex;
  gap: 9px;
  justify-content: center;
  margin: 35px 0;
}
.pagination a {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  font-size: 13px;
}
.pagination a[aria-current] {
  background: #222;
  color: #fff;
}
.seo-copy {
  border-top: 1px solid var(--line);
  padding-top: 32px;
  margin-top: 40px;
  max-width: 800px;
}
.seo-copy h2 {
  font-size: 22px;
}
.seo-copy p {
  font-size: 14px;
  color: #666;
}
.empty {
  padding: 100px 24px;
  text-align: center;
  min-height: 420px;
}
.empty > svg {
  margin-bottom: 24px;
  color: #888;
}
.empty h1 {
  font-size: 34px;
  margin-bottom: 20px;
}
.empty p {
  font-size: 14px;
  color: #777;
}
.empty .button {
  margin-top: 15px;
}
.empty .eyebrow {
  margin-bottom: 15px;
}
.pdp-layout {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 65px;
}
.main-photo {
  background: #f5f5f3;
  aspect-ratio: 1;
}
.main-photo img {
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.thumbnails {
  display: flex;
  gap: 10px;
  margin-top: 15px;
  overflow: auto;
}
.thumbnails button {
  width: 72px;
  height: 72px;
  background: #f6f6f5;
  padding: 2px;
  flex-shrink: 0;
  border: 1px solid transparent;
}
.thumbnails button.active {
  border-color: #333;
}
.thumbnails img {
  object-fit: contain;
  height: 100%;
  mix-blend-mode: multiply;
}
.buybox > .eyebrow {
  font-size: 12px;
  margin-bottom: 15px;
}
.buybox h1 {
  font-size: 32px;
  letter-spacing: -0.8px;
  line-height: 1.2;
  margin-bottom: 10px;
}
.buybox > .muted {
  font-size: 11px;
}
.pdp-price {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 30px 0;
}
.pdp-price strong {
  font-size: 27px;
  font-weight: 600;
}
.pdp-price del {
  font-size: 16px;
}
.variant-title {
  display: flex;
  justify-content: space-between;
  margin-bottom: 13px;
  gap: 15px;
  font-size: 13px;
}
.variant-title .text-button {
  font-size: 11px;
}
.variants {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.variants button {
  border: 1px solid #ddd;
  padding: 10px 12px;
  font-size: 12px;
  border-radius: 2px;
  line-height: 1.4;
  text-align: left;
}
.variants button.selected {
  border-color: #171717;
  background: #171717;
  color: white;
}
.variants button span {
  display: block;
  font-size: 9px;
  opacity: 0.6;
  margin-top: 3px;
}
.stock {
  font-size: 12px;
  color: #888;
  margin: 18px 0;
}
.stock.available {
  color: #43794b;
}
.pdp-cta {
  display: flex;
  gap: 10px;
}
.pdp-cta > .button {
  flex: 1;
}
.favorite.standalone {
  position: static;
  border: 1px solid #ddd;
  border-radius: 2px;
  width: 50px;
  height: 50px;
}
.delivery-box {
  display: flex;
  gap: 15px;
  background: #f7f7f6;
  padding: 20px;
  margin: 24px 0;
}
.delivery-box > svg {
  flex-shrink: 0;
}
.delivery-box strong {
  font-size: 13px;
  font-weight: 500;
}
.delivery-box p {
  font-size: 12px;
  margin: 8px 0;
  color: #777;
}
.delivery-box a {
  font-size: 11px;
  text-decoration: underline;
}
details {
  border-top: 1px solid var(--line);
  padding: 17px 0;
  font-size: 13px;
  line-height: 1.6;
}
summary {
  list-style: none;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
  font-size: 14px;
}
summary::-webkit-details-marker {
  display: none;
}
details p,
details dl {
  margin-top: 15px;
  color: #666;
}
dl {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 13px;
  font-size: 13px;
}
dd {
  margin: 0;
  text-align: right;
}
dt {
  color: #777;
}
.pdp .section {
  padding-left: 0;
  padding-right: 0;
}
.checkout-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 55px;
  align-items: start;
}
.cart-page h1 {
  margin: 18px 0 35px;
}
.cart-page h1 span {
  font-size: 20px;
  margin-left: 8px;
}
.cart-item {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 120px;
  gap: 23px;
  padding: 24px 0;
  border-top: 1px solid var(--line);
  font-size: 13px;
}
.cart-item > a img {
  background: #f5f5f3;
  aspect-ratio: 0.85;
  object-fit: contain;
}
.cart-item strong {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
}
.cart-item p {
  margin: 8px 0;
}
.quantity {
  display: flex;
  align-items: center;
  width: max-content;
  border: 1px solid #ddd;
  margin-top: 15px;
  height: 34px;
}
.quantity button {
  padding: 8px 10px;
}
.quantity span {
  width: 25px;
  text-align: center;
  font-size: 12px;
}
.cart-line-end {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: space-between;
}
.summary-box {
  background: #f7f7f6;
  padding: 27px;
  position: sticky;
  top: 25px;
}
.summary-box h2 {
  font-size: 21px;
  margin-bottom: 25px;
}
.summary-box > .button,
.summary-box > form + .button {
  width: 100%;
}
.totals {
  font-size: 12px;
  gap: 15px;
  margin-bottom: 25px;
}
.totals .total {
  border-top: 1px solid #ddd;
  padding-top: 18px;
  margin-top: 5px;
  color: #222;
  font-size: 16px;
  font-weight: 600;
}
.promo {
  display: flex;
  background: white;
  border: 1px solid #ddd;
  margin-bottom: 15px;
}
.promo input {
  border: 0;
  background: transparent;
  font-size: 13px;
}
.promo button {
  padding: 10px;
}
.summary-box > .muted {
  margin-top: 16px;
  margin-bottom: 0;
  font-size: 11px;
  line-height: 1.6;
}
.checkout h1 {
  margin: 25px 0 40px;
}
.back-link {
  font-size: 12px;
  color: #777;
}
.checkout-fields section {
  border-bottom: 1px solid var(--line);
  padding-bottom: 24px;
  margin-bottom: 30px;
}
.checkout-fields h2 {
  font-size: 23px;
  display: flex;
  gap: 15px;
  align-items: center;
  margin-bottom: 25px;
}
.checkout-fields h2 > span {
  font-size: 12px;
  border: 1px solid #ddd;
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border-radius: 50%;
}
.checkout-fields p {
  font-size: 14px;
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 20px;
}
.full {
  grid-column: 1/-1;
}
.checkout-mini > div {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 12px;
  margin: 15px 0;
}
.checkout-mini img {
  width: 48px;
  height: 56px;
  object-fit: contain;
}
.checkout-mini small {
  display: block;
  color: #888;
  font-size: 10px;
  margin-top: 6px;
}
.checkout-mini {
  border-bottom: 1px solid #ddd;
  padding-bottom: 16px;
  margin-bottom: 22px;
}
.consent {
  font-size: 11px;
  margin: 22px 0;
}
.consent a {
  text-decoration: underline;
}
.summary-box .button {
  width: 100%;
  gap: 10px;
}
.success-check {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: #eaf0e6;
  color: #3d6132;
  margin: 0 auto 25px;
}
.success .eyebrow {
  margin-top: 20px;
}
.order-receipt {
  max-width: 430px;
  margin: 30px auto;
  background: #f6f6f5;
  padding: 20px;
}
.content-page {
  max-width: 900px;
  min-height: 450px;
  padding-top: 40px;
}
.content-page h1 {
  margin: 35px 0;
}
.content-page p {
  white-space: pre-line;
  color: #555;
}
.content-page .underlink {
  margin-top: 25px;
}
.overlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  background: #0005;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.modal {
  position: relative;
  background: white;
  width: 550px;
  max-width: 100%;
  padding: 40px;
}
.close {
  position: absolute;
  right: 15px;
  top: 15px;
}
.modal h2 {
  font-size: 26px;
  margin-top: 15px;
}
.modal p {
  font-size: 14px;
}
.search-overlay {
  align-items: flex-start;
  overflow: auto;
  padding-top: 80px;
}
.search-dialog {
  position: relative;
  background: white;
  width: 720px;
  max-width: 100%;
  padding: 40px;
}
.search-dialog h2 {
  font-size: 26px;
  margin: 12px 0 25px;
}
.search-form {
  display: flex;
  margin-bottom: 22px;
}
.search-form input {
  border-right: 0;
  border-radius: 0;
}
.search-form button {
  border-radius: 0;
  min-width: 60px;
  padding: 12px;
}
.search-result {
  display: flex;
  align-items: center;
  gap: 18px;
  border-top: 1px solid var(--line);
  padding: 12px 0;
  font-size: 13px;
}
.search-result img {
  width: 55px;
  height: 65px;
  object-fit: contain;
  background: #f5f5f3;
}
.search-result > span {
  flex: 1;
}
.search-result small {
  display: block;
  margin-top: 7px;
  color: #888;
}
.toast {
  position: fixed;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
  background: #1f1f1f;
  color: #fff;
  padding: 17px 24px;
  box-shadow: 0 5px 30px #0002;
  z-index: 120;
  display: flex;
  gap: 16px;
  align-items: center;
  font-size: 13px;
  max-width: 95vw;
  border-radius: 3px;
}
.toast a {
  text-decoration: underline;
  white-space: nowrap;
}
.error-text {
  color: #bc3c27 !important;
  font-size: 13px;
  line-height: 1.5;
}
.photo-placeholder {
  height: 100%;
  display: grid;
  place-items: center;
  background: #f5f5f3;
  color: #999;
  font-size: 20px;
}
/* Administrative workspace */
.admin-shell {
  display: flex;
  min-height: 100vh;
  background: #f7f8fa;
  font-size: 14px;
}
.admin-sidebar {
  width: 238px;
  flex-shrink: 0;
  border-right: 1px solid #e7e8eb;
  background: white;
  position: fixed;
  inset: 0 auto 0 0;
  padding: 30px 19px;
  display: flex;
  flex-direction: column;
  z-index: 40;
}
.admin-sidebar > .logo {
  font-size: 33px;
  margin: 2px 15px 32px;
  align-self: flex-start;
}
.admin-sidebar > .logo span {
  font-size: 9px;
  right: -11px;
}
.store-label {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 14px 10px;
  border: 1px solid #e7e8eb;
  border-radius: 7px;
  font-size: 13px;
  margin-bottom: 31px;
}
.store-label > span {
  width: 34px;
  height: 34px;
  background: #1c1c1c;
  color: #fff;
  border-radius: 6px;
  display: grid;
  place-items: center;
  font-weight: 600;
}
.store-label small {
  display: block;
  color: #929292;
  font-size: 10px;
  margin-top: 4px;
}
.nav-caption {
  font-size: 9px;
  letter-spacing: 1.2px;
  color: #a2a2a2;
  margin: 0 11px 16px;
}
.admin-sidebar nav {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.admin-sidebar nav button {
  display: flex;
  gap: 12px;
  align-items: center;
  text-align: left;
  padding: 13px 12px;
  border-radius: 5px;
  font-size: 12px;
  color: #62666e;
}
.admin-sidebar nav button.active {
  background: #fff0e9;
  color: #b94e2d;
  font-weight: 600;
}
.admin-sidebar nav button:hover {
  background: #f7f7f7;
}
.admin-sidebar nav b {
  margin-left: auto;
  background: var(--accent);
  color: white;
  padding: 2px 5px;
  border-radius: 3px;
  font-size: 10px;
}
.sidebar-bottom {
  margin-top: auto;
  padding: 20px 10px 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  font-size: 12px;
  color: #666;
}
.sidebar-bottom a,
.sidebar-bottom button {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 0;
  justify-content: space-between;
  font-size: 12px;
}
.sidebar-bottom button {
  justify-content: flex-start;
}
.admin-workspace {
  margin-left: 238px;
  width: calc(100% - 238px);
}
.admin-topbar {
  height: 70px;
  background: white;
  border-bottom: 1px solid #e7e8eb;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 36px;
  font-size: 11px;
  color: #898b91;
}
.admin-topbar > span {
  display: flex;
  align-items: center;
  gap: 12px;
}
.admin-avatar {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #ede9e4;
  color: #777;
  display: grid;
  place-items: center;
}
.admin-main {
  padding: 35px;
  max-width: 1500px;
  margin: auto;
}
.admin-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-bottom: 29px;
}
.admin-heading .eyebrow {
  font-size: 9px;
  color: #9a9da4;
  letter-spacing: 1.3px;
  margin-bottom: 13px;
}
.admin-heading h1 {
  font-size: 29px;
  letter-spacing: -0.7px;
  font-weight: 500;
  margin-bottom: 9px;
}
.admin-heading p {
  font-size: 12px;
  margin: 0;
}
.admin-heading > .button {
  font-size: 12px;
  min-height: 40px;
  padding: 12px 15px;
  gap: 10px;
}
.metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 25px;
}
.metric {
  border: 1px solid #e6e8ec;
  background: white;
  border-radius: 7px;
  padding: 21px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.metric > span {
  font-size: 11px;
  color: #82868d;
}
.metric > strong {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: -1px;
}
.metric > small {
  font-size: 10px;
  color: #989ba1;
}
.admin-two-col {
  display: grid;
  grid-template-columns: 1.7fr 1fr;
  gap: 23px;
}
.admin-panel {
  background: white;
  border: 1px solid #e6e8ec;
  border-radius: 7px;
  padding: 24px;
  margin-bottom: 25px;
  min-width: 0;
}
.admin-panel h2 {
  font-size: 17px;
  letter-spacing: -0.3px;
  font-weight: 500;
  margin-bottom: 20px;
}
.panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 22px;
}
.panel-heading h2 {
  margin: 0;
}
.panel-heading .text-button {
  font-size: 10px;
  text-decoration: none;
  color: #777;
}
.health-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  border-bottom: 1px solid #f1f1f1;
  padding: 13px 0;
  font-size: 11px;
}
.health-row + .button {
  margin-top: 20px;
  width: 100%;
  font-size: 11px;
  min-height: 38px;
  padding: 10px;
}
.badge {
  display: inline-flex;
  padding: 5px 8px;
  font-size: 10px;
  border-radius: 4px;
  background: #f0f1f3;
  color: #737983;
  line-height: 1.25;
  white-space: nowrap;
}
.badge.green {
  background: #eef6ef;
  color: #4a8053;
}
.badge.amber {
  background: #fff2e4;
  color: #b78139;
}
.admin-empty {
  text-align: center;
  padding: 45px 10px;
  color: #a1a4aa;
  line-height: 1.6;
  font-size: 12px;
}
.admin-empty svg {
  margin-bottom: 13px;
  color: #b5b7bc;
}
.admin-empty h3 {
  font-size: 14px;
  font-weight: 500;
  color: #555b65;
  margin: 5px 0;
}
.admin-empty p {
  font-size: 11px;
}
.admin-product-preview {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 20px;
}
.admin-product-preview button {
  text-align: left;
  padding: 0;
  font-size: 11px;
  min-width: 0;
}
.admin-product-preview img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: contain;
  background: #f7f7f5;
  margin-bottom: 12px;
  border-radius: 4px;
}
.admin-product-preview strong {
  font-weight: 500;
  line-height: 1.5;
  display: block;
  font-size: 11px;
}
.admin-product-preview span {
  display: block;
  margin-top: 7px;
  color: #888;
  font-size: 10px;
}
.admin-search {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 23px;
  color: #a0a4ab;
}
.admin-search input {
  border: 0;
  font-size: 12px;
  width: 70%;
  padding: 8px;
}
.admin-search > span {
  margin-left: auto;
  font-size: 10px;
  white-space: nowrap;
}
.table-scroll {
  overflow: auto;
}
table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 12px;
}
th {
  padding: 12px 15px;
  border-bottom: 1px solid #e8eaee;
  background: #fafbfc;
  color: #93969f;
  font-size: 10px;
  font-weight: 400;
  white-space: nowrap;
}
td {
  padding: 16px 15px;
  border-bottom: 1px solid #eff0f2;
  line-height: 1.4;
}
td small {
  display: block;
  margin-top: 5px;
  font-size: 10px;
  color: #9b9ea6;
}
.table-product {
  display: flex;
  align-items: center;
  gap: 13px;
  text-align: left;
  padding: 0;
  min-width: 230px;
}
.table-product img {
  width: 46px;
  height: 52px;
  object-fit: contain;
  background: #f7f7f6;
  border-radius: 3px;
}
.table-product strong {
  font-size: 12px;
  font-weight: 500;
}
.editor-panel {
  max-width: 820px;
}
.editor-panel form {
  max-width: 620px;
}
.admin-panel label {
  font-size: 12px;
  margin-bottom: 20px;
}
.admin-panel input,
.admin-panel textarea,
.admin-panel select {
  font-size: 13px;
  border-color: #e1e3e7;
}
.admin-panel p {
  font-size: 13px;
}
.admin-panel form > .button {
  margin-top: 10px;
  font-size: 12px;
}
.admin-panel h3 {
  font-size: 15px;
  margin-top: 30px;
}
.integration-row {
  border-bottom: 1px solid #eee;
  padding: 12px 0;
  font-size: 12px;
}
.integration-row p {
  margin: 7px 0 5px;
  font-size: 11px;
}
.notice {
  padding: 14px 18px;
  font-size: 13px;
  margin-bottom: 20px;
  border-radius: 4px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.notice.error {
  background: #fff1ee;
  color: #b44e3d;
}
.notice.success {
  background: #edf4ec;
  color: #4d734b;
}
.editor-overlay {
  position: fixed;
  inset: 0;
  z-index: 80;
  background: #0004;
  display: flex;
  justify-content: flex-end;
}
.editor-drawer {
  background: #fff;
  width: 720px;
  max-width: 95vw;
  height: 100%;
  overflow: auto;
  padding: 28px 32px 50px;
  box-shadow: -10px 0 30px #0001;
}
.drawer-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 30px;
}
.drawer-heading h2 {
  font-size: 24px;
  margin: 0;
}
.editor-drawer label {
  font-size: 12px;
}
.editor-drawer input,
.editor-drawer select,
.editor-drawer textarea {
  font-size: 13px;
}
.editor-drawer h3 {
  font-size: 17px;
  margin-top: 28px;
}
.media-editor {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin: 15px 0;
}
.media-editor > div {
  width: 85px;
  height: 85px;
  position: relative;
  background: #f7f7f6;
}
.media-editor img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.media-editor button {
  position: absolute;
  right: 0;
  top: 0;
  background: white;
  padding: 3px;
}
.upload {
  border: 1px dashed #d2d4d9;
  padding: 15px;
  margin: 16px 0;
  border-radius: 4px;
  background: #fafafa;
}
.upload label {
  margin: 0;
  font-size: 11px;
}
.upload input {
  padding: 8px;
  border: 0;
  font-size: 11px;
  background: transparent;
}
.variant-editor {
  background: #f8f9fa;
  padding: 18px;
  margin: 15px 0;
  border: 1px solid #ebecef;
  border-radius: 5px;
}
.variant-editor label {
  font-size: 11px;
}
.variant-editor input {
  background: #fff;
}
.drawer-save {
  position: sticky;
  bottom: -50px;
  background: white;
  padding: 20px 0;
  border-top: 1px solid #eee;
  margin-top: 25px;
}
.drawer-save .button {
  width: 100%;
}
.order-item {
  padding: 15px 0;
  border-bottom: 1px solid #eee;
  font-size: 13px;
}
.order-item p {
  font-size: 12px;
  margin: 8px 0;
}
.order-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.admin-login {
  min-height: 100vh;
  background: #f6f6f5;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 60px 20px;
  gap: 50px;
}
.admin-login form {
  width: 400px;
  max-width: 100%;
  background: white;
  padding: 35px;
  border: 1px solid #e6e6e6;
  border-radius: 5px;
}
.admin-login h1 {
  font-size: 28px;
  margin: 20px 0 30px;
}
.admin-login label {
  font-size: 12px;
}
.admin-login .button {
  width: 100%;
  margin-top: 10px;
}
.admin-login form > a {
  display: block;
  text-align: center;
  margin-top: 24px;
  font-size: 12px;
  color: #888;
}
.admin-login .eyebrow {
  font-size: 9px;
  color: #999;
}
@media (min-width: 1500px) {
  .hero {
    height: 610px;
  }
  .hero-copy {
    padding: 70px 85px 40px;
  }
  .hero-copy h1 {
    font-size: 78px;
  }
}
@media (max-width: 1150px) {
  .header-main,
  .nav-row {
    padding-left: 28px;
    padding-right: 28px;
  }
  .nav-row nav {
    gap: 18px;
    font-size: 12px;
  }
  .search-trigger {
    display: none;
  }
  .hero-copy {
    padding: 45px 40px 30px;
  }
  .hero-copy h1 {
    font-size: 57px;
  }
  .hero {
    height: 490px;
  }
  .benefit-bar {
    gap: 45px;
  }
  .section,
  .container {
    padding-left: 28px;
    padding-right: 28px;
  }
  .category-tiles {
    gap: 14px;
  }
  .section-head h2 {
    font-size: 24px;
  }
  .catalog-layout {
    grid-template-columns: 165px minmax(0, 1fr);
    gap: 24px;
  }
  .product-grid {
    gap: 25px 14px;
  }
  .card-meta {
    flex-wrap: wrap;
    gap: 4px;
  }
  .pdp-layout {
    gap: 35px;
  }
  .checkout-layout {
    gap: 30px;
    grid-template-columns: minmax(0, 1fr) 315px;
  }
  .story h2 {
    font-size: 26px;
  }
  .story {
    min-height: 290px;
  }
  .admin-sidebar {
    width: 210px;
  }
  .admin-workspace {
    margin-left: 210px;
    width: calc(100% - 210px);
  }
  .admin-main {
    padding: 26px;
  }
  .metric {
    padding: 16px;
  }
  .metric > strong {
    font-size: 25px;
  }
  .admin-two-col {
    grid-template-columns: 1.3fr 1fr;
    gap: 15px;
  }
  .admin-panel {
    padding: 18px;
  }
  .admin-product-preview {
    gap: 12px;
  }
  .metric-grid {
    gap: 12px;
  }
}
@media (max-width: 800px) {
  .mobile-only {
    display: inline-flex !important;
  }
  .desktop-only {
    display: none !important;
  }
  .top-strip {
    font-size: 9px;
    height: 26px;
    gap: 0;
  }
  .top-strip a {
    display: none;
  }
  .header-main {
    height: 74px;
    padding: 0 16px;
  }
  .header-main .logo {
    font-size: 34px;
  }
  .header-main .logo span {
    font-size: 9px;
    right: -10px;
  }
  .audience > a {
    display: none;
  }
  .header-actions {
    gap: 9px;
  }
  .header-actions .icon {
    min-width: 28px;
  }
  .header-actions .icon:first-child {
    display: inline-flex;
  }
  .header-actions svg {
    width: 20px;
  }
  .bag-link {
    gap: 3px;
  }
  .nav-row {
    padding: 0 18px 13px;
    overflow: auto;
    gap: 0;
  }
  .nav-row nav {
    gap: 23px;
    font-size: 12px;
  }
  .nav-row nav button {
    font-size: 12px;
  }
  .nav-row nav a {
    white-space: nowrap;
  }
  .mega {
    padding: 20px;
  }
  .mega-grid {
    grid-template-columns: 1fr 1fr;
    gap: 25px;
  }
  .mega-grid section {
    font-size: 12px;
  }
  .mega-hub {
    font-size: 13px;
  }
  .hero {
    height: 410px;
    grid-template-columns: 46% 54%;
  }
  .hero-copy {
    padding: 35px 23px 25px;
  }
  .hero-copy > .eyebrow {
    font-size: 8px;
    letter-spacing: 1px;
    margin-bottom: 28px;
  }
  .hero-copy h1 {
    font-size: 45px;
    letter-spacing: -1.6px;
  }
  .hero-copy p {
    font-size: 12px;
    margin-bottom: 22px;
    max-width: 190px;
  }
  .hero-copy .button {
    font-size: 11px;
    min-height: 40px;
    padding: 10px 13px;
    min-width: 138px;
    gap: 8px;
  }
  .hero-footnote {
    font-size: 8px;
  }
  .hero-caption {
    bottom: 25px;
    left: 18px;
    right: 18px;
    font-size: 10px;
  }
  .hero-caption svg {
    width: 18px;
  }
  .hero-number {
    right: 18px;
    font-size: 8px;
  }
  .benefit-bar {
    padding: 17px;
    gap: 25px;
    font-size: 10px;
  }
  .benefit-bar span {
    gap: 7px;
  }
  .benefit-bar span:last-child {
    display: none;
  }
  .benefit-bar svg {
    width: 15px;
  }
  .section {
    padding: 35px 20px 5px;
  }
  .section-head {
    margin-bottom: 22px;
    gap: 12px;
  }
  .section-head h2 {
    font-size: 21px;
    letter-spacing: -0.5px;
  }
  .section-head > a {
    font-size: 10px;
    gap: 6px;
  }
  .section-head > a svg {
    width: 14px;
  }
  .section-head .eyebrow {
    font-size: 8px;
  }
  .category-tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px 13px;
  }
  .category-tiles span {
    font-size: 11px;
    margin-top: 9px;
  }
  .category-tiles span svg {
    width: 13px;
  }
  .home-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px 14px;
  }
  .card-image {
    margin-bottom: 11px;
  }
  .card-prices {
    font-size: 13px;
    gap: 7px;
  }
  .card-prices del {
    font-size: 10px;
  }
  .card-name {
    font-size: 11px;
    line-height: 1.6;
  }
  .card-meta {
    font-size: 9px;
    display: flex;
    flex-direction: column;
  }
  .favorite {
    height: 29px;
    width: 29px;
    right: 7px;
    top: 7px;
  }
  .favorite svg {
    width: 17px;
  }
  .discount {
    font-size: 9px;
    left: 8px;
    bottom: 8px;
  }
  .stories {
    gap: 15px;
    padding-top: 38px;
    padding-bottom: 35px;
  }
  .story {
    min-height: 280px;
    display: block;
  }
  .story > div {
    width: 100%;
    padding: 23px 18px;
    min-height: 245px;
  }
  .story h2 {
    font-size: 25px;
  }
  .story .eyebrow {
    font-size: 8px;
    margin-bottom: 20px;
  }
  .story .underlink {
    font-size: 10px;
    z-index: 2;
    background: #f1eee9c9;
  }
  .story.second .underlink {
    background: #edf0ecc9;
  }
  .story > img {
    position: absolute;
    right: -25px;
    bottom: 5px;
    width: 75%;
    height: 60%;
    opacity: 0.55;
    object-fit: contain;
  }
  .brand-note {
    padding: 43px 25px;
  }
  .brand-note h2 {
    font-size: 29px;
  }
  .brand-note .eyebrow {
    font-size: 8px;
  }
  .brand-note a {
    font-size: 12px;
  }
  footer {
    padding: 40px 20px 0;
  }
  .footer-top {
    gap: 35px;
    margin-bottom: 35px;
  }
  .footer-top .logo {
    font-size: 36px;
  }
  .footer-top p {
    font-size: 11px;
  }
  .footer-cols {
    grid-template-columns: 1fr 1fr;
    gap: 25px;
  }
  .footer-cols h3 {
    font-size: 13px;
    margin-bottom: 18px;
  }
  .footer-cols a {
    font-size: 11px;
  }
  .footer-bottom {
    font-size: 8px;
  }
  .container {
    padding: 24px 20px 50px;
  }
  .breadcrumbs {
    font-size: 9px;
    gap: 6px;
    margin-bottom: 23px;
  }
  .page-heading h1 {
    font-size: 29px;
  }
  .page-heading > span {
    font-size: 10px;
  }
  .catalog-aside {
    display: none;
  }
  .catalog-layout {
    display: block;
  }
  .catalog .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .chips {
    gap: 7px;
    margin-bottom: 20px;
  }
  .chips a {
    font-size: 11px;
    padding: 9px 11px;
  }
  .filters {
    gap: 10px;
    padding-bottom: 12px;
  }
  .filter-fields {
    display: none;
    order: 3;
    width: 100%;
    padding: 12px 0;
  }
  .filters.open .filter-fields {
    display: flex;
  }
  .filter-toggle {
    font-size: 12px;
    gap: 8px;
    align-items: center;
    padding: 0;
  }
  .filters select {
    font-size: 11px;
    height: 35px;
    max-width: 160px;
  }
  .filters > .mobile-only {
    display: flex !important;
  }
  .seo-copy h2 {
    font-size: 20px;
  }
  .seo-copy p {
    font-size: 12px;
  }
  .pdp-layout {
    display: block;
  }
  .gallery {
    margin-bottom: 30px;
  }
  .main-photo {
    aspect-ratio: 1.08;
  }
  .thumbnails button {
    width: 55px;
    height: 55px;
  }
  .buybox h1 {
    font-size: 28px;
  }
  .buybox .eyebrow {
    font-size: 10px;
  }
  .pdp-cta {
    position: sticky;
    bottom: 10px;
    z-index: 10;
    background: #fff;
    padding: 8px 0;
  }
  .buybox details {
    font-size: 12px;
  }
  .checkout-layout {
    display: block;
  }
  .summary-box {
    position: static;
    margin-top: 30px;
  }
  .cart-item {
    grid-template-columns: 85px minmax(0, 1fr) 75px;
    gap: 13px;
    font-size: 12px;
  }
  .cart-item strong {
    font-size: 12px;
  }
  .cart-item p {
    font-size: 11px;
  }
  .cart-page h1 {
    font-size: 31px;
    margin: 12px 0 27px;
  }
  .checkout h1 {
    font-size: 29px;
  }
  .checkout-fields h2 {
    font-size: 22px;
  }
  .form-grid {
    gap: 0 12px;
  }
  .checkout-fields label {
    font-size: 12px;
  }
  .checkout-fields p {
    font-size: 13px;
  }
  .checkout-fields input {
    font-size: 16px;
  }
  .empty {
    padding: 70px 20px;
  }
  .empty h1 {
    font-size: 28px;
  }
  .empty p {
    font-size: 13px;
  }
  .search-overlay {
    padding: 0;
    align-items: stretch;
  }
  .search-dialog {
    width: 100%;
    padding: 45px 22px;
    min-height: 100vh;
  }
  .search-dialog h2 {
    font-size: 23px;
  }
  .search-form input {
    font-size: 16px;
  }
  .toast {
    width: calc(100% - 24px);
    font-size: 12px;
    padding: 15px;
    gap: 10px;
    bottom: 12px;
  }
  .toast a {
    margin-left: auto;
  }
  .admin-sidebar {
    width: 70px;
    padding: 25px 10px;
  }
  .admin-sidebar > .logo {
    font-size: 0;
    margin: 0 auto 35px;
  }
  .admin-sidebar > .logo::first-letter {
    font-size: 35px;
  }
  .admin-sidebar > .logo span {
    display: none;
  }
  .store-label,
  .nav-caption {
    display: none;
  }
  .admin-sidebar nav button {
    font-size: 0;
    gap: 0;
    justify-content: center;
    padding: 14px 8px;
  }
  .admin-sidebar nav button svg {
    width: 21px;
    height: 21px;
  }
  .admin-sidebar nav b {
    display: none;
  }
  .sidebar-bottom {
    padding: 15px 5px;
  }
  .sidebar-bottom a,
  .sidebar-bottom button {
    font-size: 0;
    justify-content: center;
  }
  .admin-workspace {
    margin-left: 70px;
    width: calc(100% - 70px);
  }
  .admin-topbar {
    padding: 0 20px;
    height: 58px;
  }
  .admin-main {
    padding: 23px 16px;
  }
  .admin-heading h1 {
    font-size: 24px;
  }
  .admin-heading p {
    font-size: 11px;
  }
  .admin-heading {
    flex-wrap: wrap;
  }
  .metric-grid {
    grid-template-columns: 1fr 1fr;
  }
  .metric > strong {
    font-size: 25px;
  }
  .metric {
    gap: 13px;
    padding: 16px;
  }
  .metric > span {
    font-size: 10px;
  }
  .metric > small {
    font-size: 9px;
  }
  .admin-two-col {
    display: block;
  }
  .admin-product-preview {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .admin-product-preview > button:nth-child(n + 4) {
    display: none;
  }
  .admin-panel {
    padding: 16px;
  }
  .admin-heading .button {
    font-size: 11px;
  }
  .editor-drawer {
    padding: 23px 20px 40px;
    width: 100%;
    max-width: 100%;
  }
  .drawer-heading h2 {
    font-size: 21px;
  }
  .admin-search > span {
    display: none;
  }
  .admin-panel h2 {
    font-size: 16px;
  }
  .admin-panel .panel-heading .text-button {
    font-size: 9px;
  }
  .admin-login {
    padding-top: 45px;
  }
}
@media (max-width: 450px) {
  .hero {
    height: auto;
    min-height: 500px;
    grid-template-columns: 1fr 1fr;
    position: relative;
    background: #202c23;
  }
  .hero-copy {
    padding: 35px 20px 30px;
    z-index: 2;
    background: transparent;
    grid-column: 1/-1;
    grid-row: 1;
    min-height: 475px;
    pointer-events: none;
  }
  .hero-copy h1 {
    font-size: 48px;
    max-width: 240px;
  }
  .hero-copy > .eyebrow {
    margin-bottom: 25px;
  }
  .hero-copy p {
    max-width: 180px;
    font-size: 12px;
  }
  .hero-copy .button {
    pointer-events: auto;
    margin-top: 8px;
  }
  .hero-footnote {
    padding-top: 50px;
  }
  .hero-visual {
    grid-column: 1/-1;
    grid-row: 1;
    background: transparent;
    align-self: end;
    margin-left: 130px;
    height: 290px;
    overflow: visible;
  }
  .hero-visual > img {
    mix-blend-mode: normal;
    object-fit: contain;
    opacity: 0.9;
    transform: rotate(-9deg) scale(1.1);
    clip-path: inset(4% 5% 4% 5% round 2px);
  }
  .hero-caption,
  .hero-number {
    display: none;
  }
  .benefit-bar {
    font-size: 9px;
    gap: 20px;
  }
  .section-head h2 {
    font-size: 20px;
  }
  .section-head > a {
    font-size: 9px;
  }
  .stories {
    grid-template-columns: 1fr;
  }
  .story {
    min-height: 255px;
  }
  .story > div {
    min-height: 255px;
    width: 70%;
    padding: 28px 24px;
  }
  .story > img {
    right: 0;
    bottom: 0;
    width: 60%;
    height: 90%;
    opacity: 1;
  }
  .story h2 {
    font-size: 29px;
  }
  .story .underlink {
    font-size: 12px;
  }
  .category-tiles span {
    font-size: 10px;
  }
  .footer-cols {
    gap: 25px 15px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .cart-item {
    grid-template-columns: 75px minmax(0, 1fr) 65px;
    gap: 10px;
  }
  .card-name {
    font-size: 12px;
  }
  .card-meta {
    font-size: 10px;
  }
  .metric > strong {
    font-size: 22px;
  }
  .admin-main {
    padding: 20px 12px;
  }
  .admin-heading h1 {
    font-size: 22px;
  }
  .metric {
    padding: 13px;
  }
  .metric > small {
    line-height: 1.4;
  }
  .admin-product-preview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-product-preview > button:nth-child(3) {
    display: none;
  }
  .admin-sidebar {
    width: 58px;
    padding-left: 7px;
    padding-right: 7px;
  }
  .admin-workspace {
    margin-left: 58px;
    width: calc(100% - 58px);
  }
}

@media (max-width: 450px) {
  .hero {
    display: block;
    min-height: 0;
  }
  .hero-copy {
    min-height: 320px;
    padding: 30px 24px;
    background: #202c23;
  }
  .hero-copy h1 {
    font-size: 44px;
    max-width: none;
    letter-spacing: -1.8px;
  }
  .hero-copy > .eyebrow {
    margin-bottom: 22px;
  }
  .hero-copy p {
    max-width: 280px;
    margin-bottom: 20px;
  }
  .hero-copy .button {
    margin-top: 0;
  }
  .hero-footnote {
    display: none;
  }
  .hero-visual {
    display: block;
    height: 255px;
    margin: 0;
    background: #e9ebe5;
    overflow: hidden;
  }
  .hero-visual > img {
    mix-blend-mode: multiply;
    transform: none;
    opacity: 1;
    clip-path: none;
  }
  .hero-caption {
    display: none;
  }
}
/* Reference correction: Sunlight PDP structure, monochrome Lamoda treatment. */
.pdp-layout {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 56px;
  align-items: start;
}
.sunlight-gallery {
  position: sticky;
  top: 150px;
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 12px;
}
.sunlight-gallery .thumbnails {
  flex-direction: column;
  margin: 0;
  max-height: 570px;
  scrollbar-width: thin;
}
.gallery-stage {
  position: relative;
  min-width: 0;
  touch-action: pan-y;
}
.gallery-stage .main-photo {
  display: block;
  width: 100%;
  height: 570px;
  aspect-ratio: auto;
  position: relative;
  cursor: zoom-in;
  background: #f7f7f7;
}
.gallery-stage .main-photo img {
  width: 100%;
  height: 100%;
}
.zoom-hint {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  gap: 6px;
  align-items: center;
  font-size: 11px;
  background: #ffffffd9;
  padding: 8px 10px;
}
.photo-counter {
  position: absolute;
  bottom: 20px;
  left: 18px;
  font-size: 12px;
}
.gallery-related {
  position: absolute;
  bottom: 18px;
  right: 16px;
  background: white;
  padding: 9px 12px;
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 11px;
}
.gallery-arrows {
  position: absolute;
  top: 48%;
  left: 8px;
  right: 8px;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
}
.gallery-arrows button {
  pointer-events: auto;
  width: 32px;
  height: 40px;
  background: #ffffffcc;
  font-size: 20px;
}
.buybox h1 {
  font-size: 25px;
  line-height: 1.3;
  font-weight: 500;
  letter-spacing: -0.5px;
}
.buybox > .eyebrow {
  margin-bottom: 12px;
}
.buybox .pdp-price {
  border-top: 1px solid #eee;
  padding-top: 26px;
  margin: 24px 0;
}
.pdp-price strong {
  font-size: 32px;
}
.buybox .variant-title {
  margin-top: 32px;
  font-size: 16px;
}
.buybox .variants button {
  min-width: 60px;
  text-align: center;
  border-radius: 0;
  padding: 12px 15px;
}
.buybox .pdp-cta {
  margin-bottom: 22px;
  gap: 1px;
}
.buybox .pdp-cta .button {
  min-height: 56px;
}
.buybox .favorite.standalone {
  height: 56px;
  width: 56px;
  border: 0;
  background: #171717;
  color: white;
}
.pdp-receive {
  border-top: 1px solid #eee;
  margin-top: 28px;
  padding: 24px 0;
}
.pdp-receive h2 {
  font-size: 19px;
  font-weight: 500;
}
.pdp-receive .delivery-box {
  background: white;
  padding: 0;
  margin: 20px 0;
}
.delivery-more {
  width: 100%;
  background: #f5f5f5;
  color: #111;
  border: 0;
}
.photo-overlay {
  z-index: 150;
}
.photo-dialog {
  position: relative;
  background: white;
  width: min(1000px, 96vw);
  height: 94dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 20px 70px;
}
.photo-dialog > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.zoom-controls {
  position: absolute;
  bottom: 18px;
  display: flex;
  align-items: center;
  gap: 35px;
}
.zoom-controls button {
  font-size: 24px;
  padding: 5px 15px;
}
.dog-hub {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 40px;
  margin: 25px 0 70px;
}
.dog-hub aside > a {
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  padding: 12px 0;
  border-bottom: 1px solid #eee;
}
.dog-hub aside h3 {
  margin-bottom: 15px;
}
.hub-group {
  margin-bottom: 40px;
  scroll-margin-top: 170px;
}
.hub-group h2 {
  font-size: 23px;
}
.hub-tiles {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.hub-tiles img,
.hub-tiles .photo-placeholder {
  width: 100%;
  aspect-ratio: 1;
  height: auto;
  object-fit: contain;
  background: #f7f7f7;
}
.hub-tiles span {
  display: block;
  font-size: 13px;
  margin-top: 12px;
}
.dog-hub + .chips {
  display: none;
}
@media (max-width: 900px) {
  .pdp-layout {
    gap: 25px;
  }
  .sunlight-gallery {
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 8px;
  }
  .sunlight-gallery .thumbnails button {
    width: 52px;
    height: 52px;
  }
  .gallery-stage .main-photo {
    height: 440px;
  }
  .dog-hub {
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 24px;
  }
  .hub-tiles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .pdp-layout {
    display: flex;
    flex-direction: column;
    gap: 25px;
  }
  .sunlight-gallery {
    position: relative;
    top: auto;
    display: flex;
    flex-direction: column-reverse;
    width: 100%;
  }
  .gallery-stage .main-photo {
    height: auto;
    aspect-ratio: 1;
  }
  .sunlight-gallery .thumbnails {
    flex-direction: row;
    max-height: none;
    margin-top: 6px;
  }
  .sunlight-gallery .thumbnails button {
    width: 54px;
    height: 54px;
  }
  .buybox {
    width: 100%;
  }
  .buybox h1 {
    font-size: 23px;
  }
  .buybox .pdp-price strong {
    font-size: 28px;
  }
  .buybox .pdp-cta {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
    margin: 0;
    background: white;
    z-index: 40;
    border-top: 1px solid #eee;
  }
  .pdp {
    padding-bottom: 85px;
  }
  .dog-hub {
    display: block;
  }
  .dog-hub aside {
    display: none;
  }
  .hub-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .hub-group h2 {
    font-size: 20px;
  }
  .zoom-hint {
    font-size: 10px;
  }
  .photo-dialog {
    height: 95dvh;
    width: 100vw;
  }
  .photo-counter {
    bottom: 15px;
  }
  .gallery-related {
    bottom: 12px;
  }
}
.stories-strip {
  display: flex;
  justify-content: center;
  gap: 30px;
  padding-top: 30px;
  padding-bottom: 30px;
  overflow-x: auto;
}
.stories-strip > button {
  flex: 0 0 100px;
  text-align: center;
}
.stories-strip > button > span {
  display: block;
  padding: 4px;
  border: 1px solid #bbb;
  border-radius: 50%;
  margin-bottom: 10px;
}
.stories-strip img {
  width: 90px;
  height: 90px;
  object-fit: contain;
  background: #f6f6f6;
  border-radius: 50%;
}
.stories-strip strong {
  font-size: 12px;
  font-weight: 500;
}
.story-dialog {
  position: relative;
  width: 390px;
  max-width: 95vw;
  max-height: 94dvh;
  overflow: auto;
  background: #f5f5f5;
  padding: 65px 28px 24px;
}
.story-dialog > img {
  width: 100%;
  height: 38dvh;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.story-dialog h2 {
  font-size: 30px;
  margin: 20px 0;
}
.story-progress {
  position: absolute;
  top: 15px;
  left: 15px;
  right: 15px;
  display: flex;
  gap: 4px;
}
.story-progress button {
  height: 4px;
  background: #ccc;
  flex: 1;
}
.story-progress button.active {
  background: #111;
}
.story-dialog > .close {
  top: 30px;
  right: 16px;
}
.story-navigation {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
  font-size: 12px;
}
.story-dialog > .button {
  width: 100%;
}
@media (max-width: 700px) {
  .stories-strip {
    justify-content: flex-start;
    gap: 15px;
  }
  .stories-strip > button {
    flex-basis: 78px;
  }
  .stories-strip img {
    width: 68px;
    height: 68px;
  }
  .stories-strip strong {
    font-size: 10px;
  }
}
/* Lamoda homepage composition and Golden Apple story viewer. */
.lamoda-showcase {
  display: grid;
  grid-template-columns: minmax(0, 3.16fr) minmax(0, 1fr);
  gap: 24px;
  padding-top: 28px;
}
.campaign-art {
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
  aspect-ratio: 1.58;
}
.campaign-art > img,
.campaign-art > video {
  position: absolute;
  right: 0;
  width: 52%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.campaign-art h1 {
  position: relative;
  width: 68%;
  padding: 40px;
  font:
    clamp(38px, 5.3vw, 80px)/0.98 Georgia,
    serif;
  letter-spacing: -2.5px;
  font-weight: 400;
  white-space: pre-line;
}
.campaign-caption {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-top: 12px;
}
.campaign-caption strong,
.side-campaigns strong {
  display: block;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.3;
}
.campaign-caption span,
.side-campaigns > a > span {
  display: block;
  color: #929292;
  font-size: 19px;
  line-height: 1.4;
  margin-top: 3px;
}
.campaign-controls {
  display: flex;
  align-items: center;
  gap: 12px;
  white-space: nowrap;
}
.campaign-controls span {
  font-size: 12px;
  color: #111;
  margin: 0;
}
.campaign-controls button {
  padding: 4px;
}
.campaign-controls svg {
  width: 18px;
}
.side-campaigns {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.side-campaigns > a > div {
  aspect-ratio: 1.24;
  margin-bottom: 8px;
  overflow: hidden;
}
.side-campaigns img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.side-campaigns strong {
  font-size: 19px;
}
.side-campaigns > a > span {
  font-size: 17px;
}
.ga-stories {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-top: 32px;
  margin-bottom: 38px;
}
.ga-story-strip {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  scrollbar-width: none;
  flex: 1;
  justify-content: center;
  padding: 5px 0;
}
.ga-story-strip > button {
  flex: 0 0 85px;
}
.ga-story-strip > button > span {
  display: block;
  border: 2px solid #111;
  padding: 4px;
  border-radius: 50%;
  margin-bottom: 8px;
}
.ga-story-strip img {
  width: 73px;
  height: 73px;
  object-fit: cover;
  border-radius: 50%;
  background: #f2f2f2;
}
.ga-story-strip strong {
  display: block;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
}
.strip-arrow {
  flex-shrink: 0;
  color: #888;
}
.lamoda-categories {
  position: relative;
  margin-bottom: 55px;
}
.category-heading {
  display: flex;
  align-items: center;
  color: #888;
  font-size: 24px;
  margin-bottom: 20px;
  gap: 8px;
}
.lamoda-category-track {
  display: grid;
  grid-template-rows: repeat(2, 85px);
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 100px) / 6);
  gap: 20px;
  overflow-x: auto;
  scrollbar-width: none;
}
.lamoda-category-track > a {
  background: #f6f6f6;
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  display: flex;
  align-items: center;
}
.lamoda-category-track span {
  position: relative;
  z-index: 1;
  width: 70%;
  font-size: 12px;
  line-height: 1.4;
  padding: 12px;
}
.lamoda-category-track img {
  position: absolute;
  width: 48%;
  height: 100%;
  object-fit: contain;
  right: 0;
  mix-blend-mode: multiply;
}
.category-forward {
  position: absolute;
  right: 22px;
  top: 50%;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: white;
  box-shadow: 0 3px 15px #0001;
  display: grid;
  place-items: center;
}
.ga-viewer {
  position: fixed;
  inset: 0;
  background: #080808ed;
  z-index: 160;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}
.viewer-toolbar {
  position: absolute;
  top: 14px;
  left: 22px;
  right: 22px;
  display: flex;
  justify-content: space-between;
  z-index: 5;
}
.viewer-toolbar button {
  display: flex;
  align-items: center;
  gap: 9px;
}
.viewer-toolbar span {
  font-size: 10px;
  letter-spacing: 2px;
}
.ga-stage {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6vw;
  height: 85dvh;
}
.ga-active-story {
  height: 100%;
  aspect-ratio: 9/16;
  max-width: 94vw;
  position: relative;
  background: #e7e1d8;
  overflow: hidden;
}
.ga-active-story > img,
.ga-active-story > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ga-active-story:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(#0004, transparent 25%, transparent 48%, #0009);
  pointer-events: none;
}
.ga-progress {
  display: flex;
  gap: 4px;
  position: absolute;
  top: 12px;
  left: 12px;
  right: 12px;
  z-index: 3;
}
.ga-progress button {
  height: 3px;
  background: #ffffff65;
  flex: 1;
  overflow: hidden;
}
.ga-progress i {
  display: block;
  height: 100%;
  background: white;
}
.ga-story-heading {
  position: absolute;
  top: 28px;
  left: 14px;
  right: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 3;
}
.ga-story-heading img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}
.ga-story-heading span {
  font-size: 13px;
  flex: 1;
}
.ga-story-heading button {
  padding: 5px;
}
.ga-story-copy {
  position: absolute;
  bottom: 28px;
  left: 22px;
  right: 22px;
  z-index: 3;
}
.ga-story-copy h2 {
  font-size: 25px;
  line-height: 1.15;
  margin-bottom: 12px;
}
.ga-story-copy p {
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 20px;
}
.ga-story-copy .button {
  min-height: 42px;
  font-size: 12px;
}
.story-hit {
  position: absolute;
  top: 80px;
  bottom: 30%;
  width: 38%;
  z-index: 2;
}
.story-hit.left {
  left: 0;
}
.story-hit.right {
  right: 0;
}
.story-neighbour {
  position: relative;
  flex: 0 0 auto;
  height: 70dvh;
  aspect-ratio: 9/16;
  opacity: 0.35;
  overflow: hidden;
  background: #e7e1d8;
}
.story-neighbour > img,
.story-neighbour > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.story-neighbour > strong {
  position: absolute;
  bottom: 30px;
  left: 20px;
  text-align: left;
  font-size: 23px;
}
.story-neighbour:disabled {
  visibility: hidden;
}
.story-products-toggle {
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 7px;
  align-items: center;
  font-size: 11px;
  letter-spacing: 1.5px;
  white-space: nowrap;
  padding: 9px;
}
.story-products-sheet {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 6;
  background: white;
  color: #111;
  padding: 25px 5vw 18px;
  max-height: 67dvh;
  overflow: auto;
  box-shadow: 0 -150px 0 0 #0005;
}
.story-products-sheet > div {
  display: flex;
  justify-content: center;
  gap: 25px;
  overflow: auto;
}
.story-products-sheet a {
  flex: 0 0 220px;
  max-width: 65vw;
}
.story-products-sheet img {
  width: 100%;
  height: 220px;
  object-fit: contain;
  background: #f5f5f5;
}
.story-products-sheet span {
  display: block;
  font-size: 10px;
  letter-spacing: 1.5px;
  margin: 16px 0 10px;
}
.story-products-sheet h3 {
  font-size: 17px;
  margin-bottom: 10px;
}
.story-products-sheet strong {
  font-size: 20px;
}
.story-products-sheet > button {
  display: flex;
  gap: 8px;
  margin: 25px auto 0;
  font-size: 11px;
  letter-spacing: 1.5px;
}
.content-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 20px 0;
}
.content-tabs button,
.content-actions button {
  padding: 10px 13px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 12px;
}
.content-tabs .active,
.content-editor-layout aside .active {
  background: #171717;
  color: white;
}
.content-editor-layout {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 25px;
  margin-bottom: 25px;
}
.content-editor-layout aside {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.content-editor-layout aside > button {
  text-align: left;
  padding: 12px;
  font-size: 13px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.content-fields label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 15px 0;
  font-size: 13px;
}
.content-fields input,
.content-fields select {
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  width: 100%;
  background: white;
}
.content-fields input[type="color"] {
  height: 44px;
}
.content-fields .check-label {
  flex-direction: row;
  align-items: center;
}
.content-fields .check-label input {
  width: auto;
}
.content-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.content-preview {
  width: 140px;
  height: 120px;
  object-fit: contain;
  background: #f5f5f5;
}
.story-slide-editor {
  border: 1px solid #ddd;
  padding: 20px;
  margin: 25px 0;
}
.story-slide-editor legend {
  padding: 0 8px;
  font-weight: 600;
}
@media (max-width: 900px) {
  .lamoda-category-track {
    grid-auto-columns: calc((100% - 60px) / 4);
  }
  .campaign-art h1 {
    padding: 25px;
    font-size: 45px;
  }
  .campaign-caption strong {
    font-size: 18px;
  }
  .campaign-caption span {
    font-size: 16px;
  }
  .side-campaigns strong {
    font-size: 15px;
  }
  .side-campaigns > a > span {
    font-size: 13px;
  }
  .ga-story-strip {
    justify-content: flex-start;
  }
}
@media (max-width: 700px) {
  .lamoda-showcase {
    display: block;
    padding-top: 16px;
  }
  .campaign-art {
    aspect-ratio: 1.25;
  }
  .campaign-art h1 {
    font-size: 45px;
    width: 72%;
    padding: 22px;
    letter-spacing: -1.5px;
  }
  .campaign-caption strong {
    font-size: 18px;
  }
  .campaign-caption span {
    font-size: 15px;
  }
  .side-campaigns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin-top: 24px;
  }
  .side-campaigns > a > div {
    aspect-ratio: 1.3;
  }
  .ga-stories {
    margin: 24px 0;
    gap: 8px;
  }
  .ga-story-strip {
    gap: 14px;
  }
  .ga-story-strip > button {
    flex-basis: 70px;
  }
  .ga-story-strip img {
    width: 58px;
    height: 58px;
  }
  .ga-story-strip strong {
    font-size: 10px;
  }
  .strip-arrow {
    display: none;
  }
  .lamoda-category-track {
    grid-auto-columns: 150px;
    grid-template-rows: repeat(2, 76px);
    gap: 12px;
  }
  .category-heading {
    font-size: 21px;
  }
  .category-forward {
    width: 40px;
    height: 40px;
    right: 10px;
  }
  .ga-stage {
    height: 100dvh;
  }
  .ga-active-story {
    height: 100dvh;
    width: 100%;
    aspect-ratio: auto;
    max-width: none;
  }
  .story-neighbour {
    display: none;
  }
  .ga-story-heading {
    top: 48px;
  }
  .ga-progress {
    top: 35px;
  }
  .viewer-toolbar {
    top: 8px;
    left: 14px;
    right: 14px;
  }
  .viewer-toolbar span {
    font-size: 8px;
  }
  .ga-story-copy {
    bottom: 80px;
  }
  .story-products-toggle {
    bottom: 20px;
  }
  .story-products-sheet img {
    height: 180px;
  }
  .content-editor-layout {
    grid-template-columns: 1fr;
  }
  .content-editor-layout aside {
    max-height: 200px;
    overflow: auto;
  }
  .campaign-controls {
    gap: 6px;
  }
}
.lamoda-tree ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.lamoda-tree li {
  margin: 0;
}
.lamoda-tree details {
  padding: 0;
  border: 0;
}
.lamoda-tree summary {
  padding: 6px 7px;
  list-style: none;
  gap: 5px;
  border-radius: 3px;
}
.lamoda-tree summary::-webkit-details-marker {
  display: none;
}
.lamoda-tree summary > a {
  flex: 1;
  padding: 0;
}
.lamoda-tree a {
  display: block;
  font-size: 14px;
  line-height: 1.45;
  padding: 6px 7px;
  color: #111;
  font-weight: 400;
}
.lamoda-tree small {
  font-size: 11px;
  color: #999;
  margin-left: 8px;
  font-weight: 400;
}
.lamoda-tree .branch-active {
  background: #111;
  color: white;
}
.lamoda-tree .branch-active > a {
  color: white;
}
.lamoda-tree li ul {
  padding: 7px 0 10px 7px;
}
.lamoda-tree li ul a {
  font-size: 13px;
}
.lamoda-tree .leaf-active {
  font-weight: 600;
  color: var(--accent);
}
.lamoda-tree details[open] > summary > svg {
  transform: rotate(180deg);
}
.lamoda-tree summary > svg {
  transition: transform 0.2s;
}
.catalog-layout {
  grid-template-columns: 210px minmax(0, 1fr);
  gap: 24px;
}
.catalog .page-heading {
  justify-content: flex-start;
  align-items: baseline;
  gap: 10px;
}
.catalog .page-heading h1 {
  font-size: 25px;
}
.catalog .page-heading .muted {
  font-size: 12px;
}
.catalog-results .product-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px 12px;
}
@media (max-width: 1000px) {
  .catalog-results .product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .catalog-layout {
    display: block;
  }
  .catalog-results .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* Motion measured from Lamoda: link/text 200ms, search 300ms, banner overlay 500ms. */
.nav-row a,
.lamoda-tree a,
.category-heading,
.campaign-caption strong,
.side-campaigns strong {
  transition: color 0.2s linear;
}
.nav-row a:hover,
.lamoda-tree a:hover,
.category-heading:hover,
.campaign-caption a:hover strong,
.side-campaigns > a:hover strong {
  color: var(--accent);
}
.campaign-art:after {
  content: "";
  position: absolute;
  inset: 0;
  background: #000;
  opacity: 0;
  transition: opacity 0.5s;
}
.campaign-art:hover:after {
  opacity: 0.08;
}
.side-campaigns > a > div {
  position: relative;
}
.side-campaigns > a > div:after {
  content: "";
  position: absolute;
  inset: 0;
  background: #000;
  opacity: 0;
  transition: opacity 0.2s;
}
.side-campaigns > a:hover > div:after {
  opacity: 0.06;
}
.search-trigger {
  transition:
    background-color 0.3s,
    width 0.3s;
}
.mega,
.ga-viewer {
  animation: appear 0.2s ease;
}
.modal,
.story-products-sheet {
  animation: sheet-in 0.3s ease;
}
.campaign-art {
  animation: appear 0.5s ease;
}
.ga-active-story {
  animation: appear 0.2s ease;
}
.favorite {
  transition:
    color 0.2s,
    background-color 0.2s;
}
.lamoda-category-track,
.ga-story-strip {
  scroll-behavior: smooth;
  scroll-snap-type: x proximity;
}
.lamoda-category-track > a,
.ga-story-strip > button {
  scroll-snap-align: start;
}
@keyframes appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes sheet-in {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.full-art > img,
.full-art > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: normal;
}
.campaign-caption > a {
  position: relative;
}
.campaign-buy {
  position: absolute;
  bottom: 0;
  left: 0;
  background: white;
  font-size: 16px;
  font-weight: 400;
  opacity: 0;
  transform: translateX(-5px);
  transition:
    opacity 0.2s,
    transform 0.2s;
}
.campaign-caption > a:hover > span {
  opacity: 0;
  transition: opacity 0.2s;
}
.campaign-caption > a:hover .campaign-buy {
  opacity: 1;
  transform: none;
}
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.catalog-entry-tiles {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 45px;
}
.catalog-entry-tiles > a {
  background: #f5f5f5;
  border-radius: 6px;
  position: relative;
  min-height: 92px;
  display: flex;
  align-items: center;
  overflow: hidden;
}
.catalog-entry-tiles span {
  position: relative;
  z-index: 1;
  width: 64%;
  padding: 14px;
  font-size: 12px;
  text-transform: uppercase;
  line-height: 1.6;
}
.catalog-entry-tiles img {
  position: absolute;
  right: 0;
  width: 48%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.lamoda-category-track span {
  width: 66%;
  text-transform: uppercase;
  font-size: 11px;
  line-height: 1.6;
}
.lamoda-category-track {
  grid-template-rows: repeat(2, 92px);
}
@media (max-width: 1000px) {
  .catalog-entry-tiles {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .catalog-entry-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .catalog-entry-tiles span {
    font-size: 10px;
  }
  .lamoda-category-track span {
    font-size: 10px;
  }
}
.lamoda-showcase.container {
  padding-bottom: 0;
}
.ga-stories.container {
  padding-top: 0;
  padding-bottom: 0;
}
.lamoda-categories.container {
  padding-top: 0;
  padding-bottom: 0;
}
.mobile-catalog-tree {
  display: none;
}
@media (max-width: 700px) {
  .mega {
    position: fixed;
    top: 0;
    bottom: 0;
    max-height: 100dvh;
    padding: 20px 18px;
    z-index: 100;
  }
  .mega-grid {
    display: none;
  }
  .mobile-catalog-tree {
    display: block;
  }
  .mobile-catalog-tree a {
    font-size: 16px;
    padding: 12px 8px;
  }
  .mobile-catalog-tree details {
    border-bottom: 1px solid #eee;
  }
  .mobile-catalog-tree summary {
    padding: 10px 2px;
  }
  .mega-title {
    position: sticky;
    top: -20px;
    background: white;
    padding: 12px 0;
    z-index: 1;
  }
}

/* Catalog: compact Lamoda filter row, anchored popovers and tall product photography. */
.plp-filters {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
  position: relative;
  z-index: 12;
}
.plp-dropdown {
  position: relative;
}
.plp-chip {
  display: flex;
  align-items: center;
  gap: 18px;
  border: 1px solid #ddd;
  border-radius: 3px;
  background: #fff;
  padding: 9px 12px;
  font-size: 14px;
  line-height: 18px;
  min-height: 38px;
  cursor: pointer;
  transition: border-color 0.2s;
}
.plp-chip:hover,
.plp-chip[aria-expanded="true"] {
  border-color: #222;
}
.plp-chip.selected {
  background: #222;
  color: #fff;
  border-color: #222;
}
.plp-popover {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  min-width: 250px;
  padding: 20px;
  background: white;
  box-shadow: 0 5px 28px #0002;
  border: 1px solid #eee;
  border-radius: 3px;
  z-index: 20;
}
.plp-popover.is-open {
  display: grid;
  gap: 12px;
}
.plp-popover > strong {
  font-size: 16px;
  margin-bottom: 6px;
}
.plp-popover label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  min-height: 32px;
  cursor: pointer;
}
.plp-popover input[type="radio"] {
  accent-color: #111;
  width: 17px;
  height: 17px;
}
.plp-options {
  max-height: 260px;
  overflow: auto;
}
.plp-popover .button {
  width: 100%;
  font-size: 14px;
  min-height: 40px;
}
.plp-price-range {
  display: flex;
  gap: 10px;
}
.plp-price-range input {
  min-width: 0;
  width: 105px;
  border: 1px solid #ddd;
  padding: 11px;
}
.plp-switch {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  font-size: 13px;
  min-height: 38px;
  position: relative;
}
.plp-switch input {
  position: absolute;
  opacity: 0;
  width: 32px;
  height: 22px;
}
.plp-switch > span {
  width: 28px;
  height: 16px;
  border-radius: 10px;
  background: #ddd;
  position: relative;
  transition: background 0.2s;
}
.plp-switch > span:after {
  content: "";
  position: absolute;
  left: 2px;
  top: 2px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: white;
  transition: transform 0.2s;
}
.plp-switch input:checked + span {
  background: #111;
}
.plp-switch input:checked + span:after {
  transform: translateX(12px);
}
.plp-switch input:focus-visible + span {
  outline: 2px solid #777;
  outline-offset: 3px;
}
.plp-filter-title,
.plp-filter-footer,
.plp-mobile-trigger {
  display: none;
}
.plp-applied {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: -8px 0 20px;
}
.plp-applied a {
  display: flex;
  align-items: center;
  gap: 6px;
  background: #f4f4f4;
  padding: 7px 10px;
  font-size: 12px;
}
.catalog .catalog-layout {
  grid-template-columns: 223px minmax(0, 1fr);
  gap: 20px;
}
.catalog .card-image {
  aspect-ratio: 3/4;
  background: #f4f4f4;
  margin-bottom: 10px;
}
.catalog .card-image img {
  padding: 0;
}
.catalog .favorite {
  background: transparent;
  top: 8px;
  right: 8px;
  border-radius: 0;
  color: #777;
}
.catalog .discount {
  left: 0;
  bottom: 0;
  background: var(--accent);
  color: white;
  padding: 5px 7px;
  font-size: 12px;
}
.catalog .card-prices {
  gap: 7px;
  margin-bottom: 5px;
}
.catalog .card-prices del {
  order: -1;
  font-size: 13px;
}
.catalog .card-prices strong {
  font-size: 15px;
}
.catalog .card-name {
  font-size: 14px;
  line-height: 1.45;
}
.catalog .card-name strong {
  display: block;
  font-weight: 400;
}
.card-product-name:before {
  content: " / ";
}
.catalog .card-product-name:before {
  content: none;
}
.catalog .card-product-name {
  display: block;
  color: #888;
}
.catalog .card-meta {
  font-size: 11px;
  margin-top: 7px;
}
.catalog .product-grid {
  gap: 28px 12px;
}
@media (min-width: 1001px) {
  .catalog .lamoda-tree > ul > li > a {
    font-size: 18px;
    line-height: 1.35;
  }
  .catalog .page-heading h1 {
    font-size: 23px;
  }
  .catalog .page-heading {
    margin-bottom: 30px;
  }
}
@media (max-width: 700px) {
  .catalog .catalog-layout {
    display: block;
  }
  .plp-mobile-trigger {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 12px;
    background: white;
    border: 1px solid #ddd;
    margin: 0 0 18px;
    font-size: 14px;
  }
  .plp-filters {
    display: none;
  }
  .plp-filter-backdrop {
    position: fixed;
    inset: 0;
    background: #0007;
    z-index: 150;
  }
  .plp-filters.is-mobile-open {
    display: block;
    position: fixed;
    inset: 7vh 0 0;
    background: #fff;
    z-index: 151;
    overflow-y: auto;
    padding: 0 20px 100px;
    margin: 0;
    border-radius: 12px 12px 0 0;
  }
  .plp-filter-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    background: white;
    z-index: 3;
    padding: 18px 0;
    border-bottom: 1px solid #eee;
  }
  .plp-filter-title button {
    border: 0;
    background: none;
  }
  .plp-dropdown {
    border-bottom: 1px solid #eee;
    padding: 12px 0;
  }
  .plp-chip {
    border: 0;
    padding: 6px 0;
    width: 100%;
    justify-content: space-between;
  }
  .plp-popover,
  .plp-popover.is-open {
    display: grid;
    position: static;
    box-shadow: none;
    border: 0;
    padding: 10px 0 0;
    min-width: 0;
    gap: 5px;
  }
  .plp-popover > strong {
    display: none;
  }
  .plp-options {
    max-height: 180px;
  }
  .plp-chip svg,
  .plp-desktop-apply {
    display: none !important;
  }
  .plp-price-range input {
    width: 50%;
  }
  .plp-switch {
    min-height: 52px;
    font-size: 15px;
  }
  .plp-filter-footer {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #fff;
    padding: 14px 20px;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #eee;
    z-index: 3;
  }
  .plp-filter-footer .button {
    min-height: 44px;
  }
  .catalog .product-grid {
    gap: 24px 10px;
  }
  .catalog .card-name {
    font-size: 13px;
  }
  .catalog .card-prices strong {
    font-size: 14px;
  }
  .catalog .card-meta {
    display: block;
  }
  .catalog .card-meta span {
    display: block;
  }
}
/* Editorial captions: the line grows into the purchase link on hover/focus. */
.campaign-caption > a,
.side-campaigns > a {
  position: relative;
}
.campaign-caption > a {
  padding-bottom: 2px;
}
.campaign-caption > a > span,
.side-campaigns > a > span {
  transition: opacity 0.2s;
}
.campaign-buy {
  display: flex !important;
  align-items: center;
  gap: 14px;
  position: absolute;
  left: 0;
  bottom: 0;
  opacity: 0;
  font-size: 17px;
  font-weight: 400;
  color: #888;
  transition: opacity 0.2s;
  pointer-events: none;
}
.campaign-buy i,
.scenario-cta i {
  display: block;
  position: relative;
  width: 0;
  height: 1px;
  background: #111;
  transition: width 0.2s;
}
.campaign-buy i:after,
.scenario-cta i:after {
  content: "";
  position: absolute;
  right: 0;
  top: -4px;
  width: 8px;
  height: 8px;
  border-top: 1px solid #111;
  border-right: 1px solid #111;
  transform: rotate(45deg);
}
.lead-campaign:has(a:hover) .campaign-caption > a > span,
.side-campaigns > a:hover > span {
  opacity: 0;
}
.lead-campaign:has(a:hover) .campaign-buy,
.side-campaigns > a:hover .campaign-buy {
  opacity: 1;
}
.lead-campaign:has(a:hover) .campaign-buy i {
  width: 140px;
}
.side-campaigns > a:hover .campaign-buy i {
  width: 90px;
}
.home-section-title {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 24px;
  transition: color 0.2s;
}
.home-section-title:hover {
  color: var(--accent);
}
.scenario-showcase {
  margin-top: 45px;
  margin-bottom: 60px;
}
.scenario-tabs {
  display: flex;
  gap: 8px;
  overflow: auto;
  margin-bottom: 24px;
}
.scenario-tabs button {
  border: 0;
  border-radius: 22px;
  padding: 9px 17px;
  background: #f5f5f5;
  font-size: 13px;
  white-space: nowrap;
}
.scenario-tabs button[aria-pressed="true"] {
  background: #222;
  color: #fff;
}
.scenario-carousel {
  position: relative;
}
.scenario-rail {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 72px) / 4);
  gap: 24px;
  overflow: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.scenario-card {
  min-width: 0;
  scroll-snap-align: start;
}
.scenario-label {
  padding: 0 12px 10px;
  display: grid;
  gap: 4px;
  font-size: 13px;
}
.scenario-label strong {
  font-weight: 400;
}
.scenario-label span {
  color: #888;
  font-size: 12px;
}
.scenario-photo {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: cover;
  background: #f5f5f5;
}
.scenario-cta {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 13px;
  font-weight: 400;
  margin-top: 14px;
  color: #888;
}
.scenario-cta i {
  width: 24px;
}
.scenario-card:hover .scenario-cta i,
.scenario-card:focus-visible .scenario-cta i {
  width: 80px;
}
.scenario-prev,
.scenario-next {
  position: absolute;
  top: 50%;
  background: #fff;
  width: 54px;
  height: 54px;
  border: 0;
  border-radius: 50%;
  display: grid;
  place-items: center;
  box-shadow: 0 2px 10px #0001;
}
.scenario-prev {
  left: -20px;
}
.scenario-next {
  right: -20px;
}
@media (min-width: 701px) {
  .top-strip {
    display: none;
  }
  .header-main {
    height: 68px;
    min-height: 68px;
  }
  .lamoda-showcase {
    margin-top: 20px;
  }
}
@media (max-width: 700px) {
  .scenario-rail {
    grid-auto-columns: 72%;
    gap: 14px;
  }
  .scenario-prev,
  .scenario-next {
    display: none;
  }
  .scenario-showcase {
    margin-top: 30px;
    margin-bottom: 35px;
  }
  .home-section-title {
    font-size: 21px;
  }
  .campaign-buy {
    display: none !important;
  }
  .scenario-photo {
    aspect-ratio: 3/4;
  }
}
@media (prefers-reduced-motion: reduce) {
  .campaign-buy,
  .campaign-buy i,
  .scenario-cta i {
    transition: none;
  }
}
@media (min-width: 701px) {
  .container {
    padding-left: 40px;
    padding-right: 40px;
  }
  .header-main {
    padding-left: 40px;
    padding-right: 40px;
  }
  .nav-row {
    height: 56px;
    padding: 0 40px 12px;
  }
  .lamoda-showcase {
    padding-top: 0;
    margin-top: 20px;
  }
  .nav-row nav {
    font-size: 14px;
    gap: 24px;
  }
  .search-trigger {
    min-width: 250px;
  }
  .section {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.plp-switch,
.plp-popover label {
  flex-direction: row;
  margin: 0;
}
.plp-switch > span {
  flex-shrink: 0;
}
.plp-switch {
  gap: 7px;
}
.plp-popover input[type="radio"] {
  margin: 0;
  flex-shrink: 0;
}
.campaign-buy {
  transform: none;
}
@media (min-width: 1001px) {
  .catalog .lamoda-tree > ul > li > details > summary > a {
    font-size: 18px;
    line-height: 1.35;
  }
  .catalog .lamoda-tree > ul > li > details > summary {
    min-height: 39px;
  }
}
.category-forward.category-back {
  left: 20px;
  right: auto;
}
@media (max-width: 700px) {
  .category-forward.category-back {
    left: 2px;
  }
}
/* Journal: one editorial lead, three cards and readable article pages. */
.journal-home {
  margin-top: 64px;
  margin-bottom: 64px;
}
.journal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.journal-lead {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 360px;
  margin-bottom: 24px;
  overflow: hidden;
}
.journal-lead-copy {
  padding: 32px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}
.journal-lead-copy h3 {
  font-size: clamp(25px, 3vw, 46px);
  font-weight: 400;
  line-height: 1.2;
  margin: 0 0 22px;
  letter-spacing: -0.7px;
}
.journal-lead-copy p {
  font-size: 20px;
  line-height: 1.4;
  margin: 0;
}
.journal-lead-image {
  position: relative;
  min-width: 0;
}
.journal-lead-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  max-height: 440px;
}
.journal-rubric {
  position: absolute;
  left: 0;
  bottom: 0;
  background: #c9e3ef;
  color: #111;
  padding: 4px 8px;
  font-size: 14px;
  line-height: 1.2;
}
.journal-read {
  display: flex;
  gap: 14px;
  align-items: center;
  font-size: 16px;
  margin-top: auto;
  padding-top: 20px;
  opacity: 0;
  transition: opacity 0.2s;
}
.journal-read i {
  position: relative;
  width: 0;
  height: 1px;
  background: currentColor;
  transition: width 0.2s;
}
.journal-read i:after {
  content: "";
  position: absolute;
  right: 0;
  top: -4px;
  width: 8px;
  height: 8px;
  border-top: 1px solid;
  border-right: 1px solid;
  transform: rotate(45deg);
}
.journal-lead:hover .journal-read,
.journal-lead:focus-visible .journal-read {
  opacity: 1;
}
.journal-lead:hover .journal-read i,
.journal-lead:focus-visible .journal-read i {
  width: 100px;
}
.journal-card-art {
  position: relative;
  aspect-ratio: 1.78;
  overflow: hidden;
}
.journal-card-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: filter 0.5s;
}
.journal-card:hover img {
  filter: brightness(0.96);
}
.journal-card > h3 {
  font-size: 23px;
  line-height: 1.25;
  font-weight: 400;
  margin: 15px 0 0;
  transition: color 0.2s;
}
.journal-card:hover > h3 {
  color: var(--accent);
}
.journal-text {
  align-self: start;
  background: none !important;
}
.journal-text .journal-card-art {
  padding: 40px 26px 22px;
}
.journal-text .journal-rubric {
  top: 20px;
  left: 26px;
  bottom: auto;
  background: #999;
  color: #fff;
}
.journal-text h3 {
  font-weight: 400;
  font-size: 24px;
  line-height: 1.25;
  margin: 18px 0 0;
}
.journal-index {
  padding-top: 30px;
  padding-bottom: 70px;
}
.journal-index h1 {
  font-size: 40px;
  font-weight: 400;
  margin: 24px 0 10px;
}
.journal-intro {
  color: #777;
  margin-bottom: 30px;
}
.journal-index .journal-grid {
  row-gap: 40px;
}
.article-page {
  padding-top: 30px;
  padding-bottom: 70px;
}
.article-header {
  position: static;
  background: none;
  box-shadow: none;
  border: 0;
  max-width: 880px;
  margin: 36px auto;
  padding: 0;
  text-align: center;
  z-index: auto;
}
.article-header > span {
  color: var(--accent);
  font-size: 14px;
}
.article-header h1 {
  font-size: clamp(30px, 4vw, 52px);
  font-weight: 400;
  line-height: 1.13;
  letter-spacing: -1px;
  margin: 18px 0;
}
.article-header p {
  font-size: 20px;
  line-height: 1.5;
  color: #777;
}
.article-header time {
  display: block;
  color: #999;
  font-size: 13px;
  margin-top: 20px;
}
.article-cover {
  max-width: 1100px;
  margin: 0 auto 45px;
}
.article-cover img {
  width: 100%;
  max-height: 580px;
  object-fit: cover;
  display: block;
}
.article-layout {
  display: flex;
  gap: 50px;
  justify-content: center;
  align-items: flex-start;
}
.article-toc {
  flex: 0 0 190px;
  display: grid;
  gap: 15px;
  font-size: 14px;
  line-height: 1.4;
}
.article-toc a {
  color: #777;
}
.article-toc a:hover {
  color: var(--accent);
}
.article-body {
  max-width: 740px;
  min-width: 0;
  flex: 1;
  font-size: 18px;
  line-height: 1.75;
}
.article-body > p,
.article-body > blockquote {
  white-space: pre-wrap;
  margin: 0 0 24px;
}
.article-body h2 {
  font-size: 28px;
  font-weight: 400;
  line-height: 1.3;
  margin: 38px 0 20px;
  scroll-margin-top: 145px;
}
.article-body > h2:first-child {
  margin-top: 0;
}
.article-body blockquote {
  border-left: 3px solid var(--accent);
  padding: 12px 25px;
  background: #f6f3ef;
}
.article-body figure {
  margin: 30px 0;
}
.article-body figure img {
  width: 100%;
  height: auto;
  display: block;
}
.article-body figcaption {
  color: #888;
  font-size: 13px;
  margin-top: 8px;
}
.article-products {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 25px 0;
}
.article-products a {
  display: grid;
  align-content: start;
  gap: 7px;
  font-size: 14px;
  line-height: 1.4;
}
.article-products img {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: contain;
  background: #f5f5f5;
}
.article-products strong {
  font-weight: 400;
}
.article-products span {
  font-weight: 600;
}
.article-inline-link {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid;
  color: var(--accent);
}
.article-category-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.article-category-links a {
  display: flex;
  align-items: center;
  gap: 7px;
  background: #f4f4f4;
  padding: 8px 12px;
  font-size: 14px;
}
.article-related {
  margin-top: 70px;
}
.article-related > h2 {
  font-size: 26px;
  font-weight: 400;
  margin-bottom: 25px;
}
.journal-admin-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 25px;
}
.journal-admin-toolbar > input {
  max-width: 400px;
}
.journal-admin-layout {
  display: grid;
  grid-template-columns: 235px minmax(0, 1fr);
  gap: 24px;
}
.journal-admin-list button {
  display: block;
  width: 100%;
  text-align: left;
  padding: 15px;
  border: 1px solid #e8e8e8;
  margin-bottom: 8px;
  background: #fff;
}
.journal-admin-list button.active {
  border-color: var(--accent);
  background: #f8f4f1;
}
.journal-admin-list strong,
.journal-admin-list span {
  display: block;
}
.journal-admin-list span {
  font-size: 11px;
  color: #888;
  margin-top: 8px;
}
.journal-editor {
  background: #fff;
  padding: 25px;
  min-width: 0;
}
.journal-editor-top {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}
.journal-editor-top h2 {
  font-size: 20px;
}
.journal-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.journal-fields > label:first-child,
.journal-fields > div {
  grid-column: 1/-1;
}
.journal-fields small {
  font-size: 12px;
  color: #888;
  line-height: 1.5;
}
.journal-editor > h3 {
  margin: 30px 0 10px;
}
.article-block-editor {
  border: 1px solid #ddd;
  padding: 18px;
  margin: 18px 0;
}
.article-block-editor legend {
  padding: 0 8px;
}
.article-block-editor .content-actions {
  justify-content: flex-end;
  margin-bottom: 12px;
}
.article-block-editor textarea {
  resize: vertical;
  line-height: 1.7;
  min-height: 90px;
}
.article-add-block {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 20px 0;
}
.article-add-block button {
  display: flex;
  align-items: center;
  gap: 5px;
  border: 1px solid #ddd;
  padding: 10px;
  background: white;
}
.article-settings {
  padding: 18px 0;
  border-top: 1px solid #eee;
}
.article-settings summary {
  cursor: pointer;
  margin-bottom: 15px;
}
.article-settings select[multiple],
.article-block-editor select[multiple] {
  min-height: 150px;
}
.journal-save {
  position: sticky;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
  padding: 15px 0;
  border-top: 1px solid #ddd;
  z-index: 3;
  gap: 10px;
}
.journal-save span {
  font-size: 12px;
  color: #777;
}
.article-preview.container {
  padding: 0;
}
.article-preview .article-layout {
  display: block;
}
.article-preview .article-toc {
  margin-bottom: 25px;
}
.article-preview .article-header h1 {
  font-size: 32px;
}
.article-preview .article-header {
  text-align: left;
}
.journal-admin + .admin-heading {
  display: none;
}
@media (max-width: 1000px) {
  .journal-admin-layout {
    grid-template-columns: 180px minmax(0, 1fr);
  }
  .journal-fields {
    grid-template-columns: 1fr;
  }
  .journal-text h3 {
    font-size: 19px;
  }
  .journal-lead-copy {
    padding: 24px;
  }
  .journal-lead {
    min-height: 300px;
  }
  .article-layout {
    gap: 25px;
  }
  .article-toc {
    flex-basis: 150px;
  }
}
@media (max-width: 700px) {
  .journal-home {
    margin-top: 38px;
    margin-bottom: 40px;
  }
  .journal-lead {
    display: flex;
    flex-direction: column-reverse;
    min-height: 0;
  }
  .journal-lead-image img {
    height: 230px;
    object-fit: cover;
  }
  .journal-lead-copy {
    padding: 22px;
  }
  .journal-lead-copy h3 {
    font-size: 26px;
  }
  .journal-lead-copy p {
    font-size: 16px;
  }
  .journal-read {
    display: none;
  }
  .journal-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .journal-card > h3 {
    font-size: 23px;
  }
  .journal-text h3 {
    font-size: 25px;
  }
  .journal-index h1 {
    font-size: 32px;
  }
  .article-layout {
    display: block;
  }
  .article-toc {
    margin-bottom: 30px;
  }
  .article-header {
    margin: 25px auto;
    text-align: left;
  }
  .article-header p {
    font-size: 17px;
  }
  .article-body {
    font-size: 17px;
  }
  .article-body h2 {
    font-size: 25px;
  }
  .article-cover {
    margin-bottom: 28px;
  }
  .article-products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .journal-admin-layout {
    display: block;
  }
  .journal-admin-list {
    max-height: 240px;
    overflow: auto;
    margin-bottom: 20px;
  }
  .journal-editor {
    padding: 15px;
  }
  .journal-editor-top {
    display: block;
  }
  .journal-editor-top .button {
    margin-top: 15px;
  }
  .journal-admin-toolbar {
    flex-wrap: wrap;
  }
}
@media (prefers-reduced-motion: reduce) {
  .journal-read,
  .journal-read i,
  .journal-card-art img {
    transition: none;
  }
}
@media (min-width: 701px) {
  .journal-lead {
    aspect-ratio: 3.16;
    min-height: 0;
  }
  .journal-lead-image {
    overflow: hidden;
    min-height: 0;
  }
  .journal-lead-image img {
    position: absolute;
    inset: 0;
    max-height: none;
    height: 100%;
  }
  .journal-lead-copy {
    min-height: 0;
  }
  .journal-lead-copy p {
    font-size: 18px;
  }
}
.ga-story-strip {
  align-items: flex-start;
}
.ga-story-strip > button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}
.ga-story-strip > button > span {
  flex-shrink: 0;
}
.ga-story-strip img {
  display: block;
}

/* SEO content and CMS preview */
.seo-fields { border: 1px solid #ddd; padding: 18px; margin: 20px 0; min-width: 0; }
.seo-fields legend { font-weight: 600; }
.seo-fields small { color: #666; line-height: 1.5; }
.seo-preview { padding: 16px; background: #f7f7f7; margin: 16px 0; overflow-wrap: anywhere; }
.seo-preview strong { display: block; margin: 8px 0; font-size: 20px; color: #283b72; }
.seo-preview p { margin: 0; line-height: 1.5; }
.faq-editor { border-bottom: 1px solid #ddd; padding: 12px 0 20px; margin-bottom: 16px; }
.category-faq { margin: 28px 0; }
.category-faq details { padding: 16px 0; border-bottom: 1px solid #ddd; }
.category-faq summary { cursor: pointer; font-weight: 500; }
.related-category-links { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.related-category-links a { text-decoration: underline; text-underline-offset: 4px; }
/* Customer account, separate variant selectors and verified customer reviews. */
.variant-picker{display:grid;gap:16px;margin:24px 0}.variant-field{position:relative}.variant-field-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-bottom:8px;gap:12px}.variant-field-label .text-button{font-size:12px}.variant-select{display:flex;align-items:center;gap:10px;width:100%;padding:12px 14px;border:1px solid #b6b6b6;background:#fff;min-height:48px;text-align:left}.variant-select>span{flex:1}.variant-select img,.variant-dropdown img{object-fit:contain;background:#f6f6f6}.variant-select[aria-expanded=true]{border-color:#171717}.variant-dropdown{position:absolute;top:100%;left:0;right:0;z-index:20;background:#fff;border:1px solid #171717;box-shadow:0 6px 20px #00000012;max-height:290px;overflow:auto}.variant-dropdown button{display:flex;align-items:center;text-align:left;width:100%;gap:12px;padding:14px;background:#fff;border:0;border-bottom:1px solid #eee;min-height:48px}.variant-dropdown button:hover,.variant-dropdown button[aria-pressed=true]{background:#f4f2ef}.variant-dropdown button>span{flex:1}.variant-dropdown small{font-size:11px;color:#777}.rating-link{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:13px;margin:16px 0}.rating-link>span:not(.review-stars){color:#737373}.rating-link img{width:30px;height:30px;border-radius:50%;object-fit:cover;margin-left:-5px}.review-stars{color:#854a35;letter-spacing:2px}.review-stars.large{font-size:28px}.reviews-section{scroll-margin-top:120px}.reviews-section>h2{font-size:30px;margin-bottom:32px}.reviews-section>h2 span{font-size:18px;margin-left:10px}.reviews-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px}.review-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #ddd;padding-bottom:18px}.review-tabs{display:flex;gap:20px;flex-wrap:wrap}.review-tabs button{padding:8px 0;background:none;border:0;color:#777;border-bottom:2px solid transparent}.review-tabs button.active{color:#171717;border-bottom-color:#171717}.review-tabs span{color:#888;margin-left:4px;font-size:12px}.review-toolbar select{border:0;background:white;padding:8px;font-size:13px}.review{padding:28px 0;border-bottom:1px solid #ddd}.review header{display:flex;justify-content:space-between;gap:20px}.review time{font-size:13px;color:#888}.review-meta{display:flex;align-items:center;gap:15px;margin:10px 0}.verified{display:flex;gap:4px;align-items:center;font-size:11px;color:#777}.review-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.7}.review-media{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.review-media>button,.review-media.uploaded>div{position:relative;width:90px;height:110px;border:0;padding:0;background:#f5f5f5}.review-media img,.review-media video{width:100%;height:100%;object-fit:cover}.review-media.uploaded button{position:absolute;right:2px;top:2px;border:0;background:white;width:24px;height:24px}.video-play{position:absolute;top:40%;left:36%;color:white;filter:drop-shadow(0 1px 3px #333)}.review-helpful{display:flex;gap:8px;align-items:center;background:none;border:0;padding:10px 0;font-size:12px;color:#777}.review-reply{padding:18px;background:#f5f4f2;margin:16px 0;font-size:14px}.review-reply p{white-space:pre-wrap;margin-bottom:0}.review-more{width:100%;margin-top:24px}.review-score{align-self:start;position:sticky;top:120px}.score-number{font-size:42px;font-weight:600}.score-number small{font-size:16px;font-weight:400;color:#777}.rating-distribution{display:grid;gap:12px;margin:25px 0}.rating-distribution button{display:flex;gap:14px;align-items:center;border:0;background:none;padding:0;font-size:13px}.rating-distribution button[aria-pressed=true]{font-weight:700;color:#854a35}.rating-distribution i{height:4px;flex:1;background:#eee}.rating-distribution b{display:block;height:100%;background:#854a35}.rating-distribution button>span:last-child{width:25px;text-align:right}.review-score .button{width:100%}.review-empty{padding:48px 0}.review-notice{background:#f4eee9;padding:12px;font-size:13px}.review-viewer{background:#171717;color:white;max-width:850px;width:90vw;padding:38px 20px 16px}.review-viewer>img,.review-viewer>video{width:100%;height:min(68vh,700px);object-fit:contain}.review-viewer .close{color:white;background:#333}.viewer-controls{display:flex;justify-content:center;align-items:center;gap:24px;padding-top:12px}.review-form{width:min(600px,94vw);max-height:90vh;overflow:auto}.review-form label{display:grid;gap:8px;margin:18px 0}.review-form textarea{width:100%}.rating-input{display:flex;gap:10px;margin:20px 0}.rating-input button{font-size:34px;color:#854a35;background:none;border:0;padding:0}.review-upload{border:1px dashed #bbb;padding:16px;display:flex!important;align-items:center;cursor:pointer;font-size:14px}.review-upload input{max-width:200px;font-size:11px;border:0}.review-admin-item{margin:20px 0;padding:24px;border:1px solid #ddd;background:white}.review-admin-item header{display:flex;justify-content:space-between;gap:20px}.review-admin-item label{display:grid;gap:7px;margin:16px 0}.review-admin-media{display:flex;gap:15px;flex-wrap:wrap}.review-admin-media img,.review-admin-media video{width:160px;height:180px;object-fit:contain;background:#f5f5f5}
.account-auth{display:grid;grid-template-columns:1fr 440px;gap:100px;padding-top:70px;padding-bottom:100px}.account-auth-intro{padding:30px 0}.account-auth-intro h1{font-size:clamp(36px,4vw,58px);line-height:1.15;font-weight:500;margin:25px 0}.account-auth-intro>p{max-width:420px;color:#777;font-size:18px;line-height:1.6}.account-auth-benefits{display:flex;gap:30px;margin-top:45px;flex-wrap:wrap}.account-auth-benefits span{display:grid;gap:15px;font-size:13px}.account-auth-benefits svg{color:#854a35}.auth-card{padding:32px;border:1px solid #ddd}.account-auth-tabs{display:flex;gap:24px;border-bottom:1px solid #ddd;margin-bottom:26px}.account-auth-tabs button{border:0;border-bottom:2px solid transparent;background:none;font-size:20px;padding:0 0 15px;color:#888}.account-auth-tabs button.active{color:#171717;border-bottom-color:#171717}.auth-card form>label:not(.check),.account-form>label{display:grid;gap:8px;margin-bottom:20px;font-size:14px}.auth-card input,.account-form input,.account-form select{min-height:46px;width:100%;border:1px solid #ccc;padding:12px;background:white}.auth-card .check{font-size:12px;line-height:1.6;display:block;margin:20px 0}.auth-card .check input{width:16px;min-height:0;height:16px;margin-right:8px;vertical-align:middle}.auth-card .check a{text-decoration:underline}.auth-card .button{width:100%;margin-bottom:24px}.auth-card>.underlink{font-size:13px}.account-page{padding-top:40px;padding-bottom:80px}.account-heading{margin-bottom:38px}.account-heading h1{font-weight:500;font-size:36px;margin:14px 0}.account-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:60px}.account-nav{display:flex;flex-direction:column;align-self:start;position:sticky;top:110px;gap:4px}.account-nav button{display:flex;gap:13px;align-items:center;background:none;border:0;text-align:left;padding:15px;font-size:14px}.account-nav button[aria-current=page]{background:#f3efeb;color:#854a35}.account-nav button:last-child{margin-top:24px;color:#777}.account-content>h2{font-size:24px;font-weight:500;margin:0 0 28px}.account-empty{background:#f7f6f4;padding:45px 32px;font-size:15px;line-height:1.7}.account-order{border:1px solid #ddd;padding:24px;margin-bottom:22px}.account-order>header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #eee;padding-bottom:18px}.account-order header>div{display:grid;gap:6px}.account-order header>div>span{font-size:12px;color:#777}.account-order-items>a{display:flex;gap:22px;margin:22px 0;font-size:14px}.account-order-items img{width:80px;height:95px;object-fit:contain;background:#f5f5f5}.account-order-items a>div{display:grid;align-content:center;gap:7px}.account-order-items span,.account-order details{font-size:13px;color:#777}.account-order small{color:#854a35}.account-order footer{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid #eee;margin-top:20px}.account-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.account-cards article{position:relative;border:1px solid #ddd;padding:25px}.account-cards article>svg{color:#854a35}.account-cards h3{margin:16px 0;font-size:20px}.account-cards p{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.account-cards article>.icon{position:absolute;right:16px;bottom:18px}.account-form{max-width:760px;padding:26px;border:1px solid #ddd;margin-bottom:24px}.account-form .form-grid{gap:20px}.account-form-actions{display:flex;gap:24px;margin-top:24px;align-items:center}.account-form .check input{width:16px;min-height:16px}.account-wishlist{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.account-wishlist article>a{display:grid;gap:12px;font-size:14px}.account-wishlist img{width:100%;aspect-ratio:1;object-fit:contain;background:#f5f5f5}.account-wishlist .text-button{font-size:11px;margin-top:16px}
.sunlight-cart{padding-top:36px}.sunlight-cart h1{font-size:36px;font-weight:500;margin-bottom:24px}.cart-login-banner{display:flex;align-items:center;justify-content:space-between;background:#f3ece6;padding:20px 24px;margin-bottom:30px;color:#854a35}.cart-login-banner span{display:grid;gap:6px}.cart-login-banner small{font-size:13px;font-weight:400}.sunlight-cart .checkout-layout{grid-template-columns:minmax(0,1fr) 340px;gap:60px;align-items:start}.cart-select-all{display:flex;gap:12px;align-items:center;padding:0 0 22px;border-bottom:1px solid #ddd;font-size:14px}.cart-select-all input,.cart-product-photo input{width:20px;height:20px;accent-color:#171717}.cart-select-all small{color:#888;margin-left:5px}.sunlight-cart-item{display:grid;grid-template-columns:130px minmax(0,1fr) 130px;gap:24px;padding:28px 0;border-bottom:1px solid #ddd}.cart-product-photo{position:relative;background:#f6f6f6}.cart-product-photo img{width:100%;height:160px;object-fit:contain}.cart-product-photo input{position:absolute;left:7px;top:7px;z-index:1}.cart-product-info{display:flex;flex-direction:column;align-items:start;gap:7px}.cart-product-name{font-size:16px;line-height:1.45}.cart-option-text{font-size:12px;color:#777;margin:4px 0;line-height:1.5}.cart-item-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:auto;padding-top:16px;align-items:center}.cart-item-controls .quantity{border:1px solid #ddd;gap:0}.cart-item-controls .quantity button{width:32px;height:32px;min-height:32px}.cart-item-controls .quantity span{min-width:28px;text-align:center;font-size:12px}.cart-change-variant{display:flex;align-items:center;gap:6px;border:0;border-bottom:1px solid #bbb;padding:6px 0;background:white;font-size:12px}.cart-item-end{display:flex;flex-direction:column;justify-content:space-between;align-items:end;text-align:right}.cart-item-end strong{font-size:18px;white-space:nowrap}.cart-item-end del{display:block;font-size:13px;color:#999;margin-top:6px}.cart-item-actions{display:flex;gap:12px;margin-top:20px}.cart-item-actions .icon{padding:5px}.unselected .cart-product-name,.unselected .cart-item-end>div:first-child{color:#888}.cart-summary{position:sticky;top:120px;padding:20px 0}.cart-grand-total{display:flex;justify-content:space-between;font-size:25px;margin-bottom:20px}.cart-summary .button{width:100%;margin-bottom:24px}.cart-subtotals{display:grid;grid-template-columns:1fr auto;gap:14px;font-size:13px}.cart-subtotals dt{color:#777}.cart-subtotals dd{text-align:right;margin:0}.cart-summary .promo{margin-top:22px}.cart-variant-modal{max-width:440px;width:92vw}.cart-variant-modal>.button{width:100%;margin-top:18px}.added-cart{max-width:500px;width:94vw}.added-product{display:flex;gap:24px;align-items:center;margin:28px 0}.added-product img{width:120px;height:145px;object-fit:contain;background:#f6f6f6}.added-product p{font-size:13px}.added-cart>.button{width:100%;margin-top:12px}
@media(max-width:1000px){.account-auth{gap:40px;grid-template-columns:1fr 400px}.account-layout{gap:28px;grid-template-columns:200px 1fr}.reviews-layout{gap:36px;grid-template-columns:minmax(0,1fr) 250px}.sunlight-cart .checkout-layout{gap:28px;grid-template-columns:1fr 280px}.sunlight-cart-item{grid-template-columns:100px minmax(0,1fr) 100px;gap:14px}.cart-product-photo img{height:140px}.account-wishlist{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.account-auth{display:block;padding-top:30px;padding-bottom:40px}.account-auth-intro{padding:0 0 30px}.account-auth-intro h1{font-size:34px}.account-auth-intro>p{font-size:15px}.account-auth-benefits{margin-top:25px;gap:20px}.account-auth-benefits span{font-size:11px;gap:10px}.auth-card{padding:24px 18px}.account-heading h1{font-size:28px}.account-layout{display:block}.account-nav{position:static;display:flex;flex-direction:row;overflow:auto;margin-bottom:28px;gap:4px}.account-nav button{flex-shrink:0;padding:12px;font-size:12px;gap:8px}.account-nav button:last-child{margin-top:0}.account-cards{grid-template-columns:1fr}.account-form{padding:20px 16px}.account-order{padding:18px}.account-order header{font-size:13px}.account-wishlist{gap:14px}.account-content>h2{font-size:22px}.reviews-section>h2{font-size:25px}.reviews-layout{display:flex;flex-direction:column;gap:30px}.review-score{position:static;order:-1;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:5px 28px}.review-score .rating-distribution{grid-column:2;grid-row:1/5;margin:0}.review-score .score-number{font-size:34px}.review-score>.review-stars{font-size:22px}.review-score>.button,.review-score>.small-text,.review-score>.review-notice{grid-column:1/-1}.review-score>.button{margin-top:16px}.review-toolbar{align-items:stretch;flex-direction:column;gap:8px}.review-tabs{gap:24px}.review-toolbar select{align-self:start;padding-left:0}.review-form{padding:30px 20px}.review-upload{flex-wrap:wrap}.review-text{font-size:14px}.review-media>button{width:76px;height:92px}.review-admin-item header{flex-direction:column}.sunlight-cart{padding-top:24px}.sunlight-cart h1{font-size:28px}.cart-login-banner{padding:16px;font-size:13px}.cart-login-banner small{font-size:11px}.sunlight-cart .checkout-layout{display:flex;flex-direction:column;gap:28px}.cart-lines,.cart-summary{width:100%}.sunlight-cart-item{grid-template-columns:90px minmax(0,1fr) 85px;gap:12px}.cart-product-photo img{height:120px}.cart-product-name{font-size:13px}.cart-item-end strong{font-size:14px}.cart-item-end del{font-size:11px}.cart-option-text{font-size:11px}.cart-item-controls{gap:10px}.cart-item-actions{gap:3px}.cart-summary{position:static;background:#f7f6f4;padding:24px 20px}.cart-grand-total{font-size:23px}.cart-variant-modal{padding:32px 22px}.added-cart{padding:30px 20px}.added-product{gap:16px}.added-product img{width:90px;height:110px}.added-product strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.variant-dropdown{scroll-behavior:auto}}
.variant-select img,.variant-dropdown img{width:32px;height:40px;flex:0 0 32px}.review-toolbar select{width:auto;max-width:200px;flex:0 0 auto}.review-toolbar .review-tabs{flex-wrap:nowrap;white-space:nowrap}.stars-meter{display:inline-block;position:relative;color:#d5d5d5;letter-spacing:2px;line-height:1.2;white-space:nowrap}.stars-meter b{position:absolute;left:0;top:0;overflow:hidden;color:#854a35;font-weight:inherit}.stars-meter.large{font-size:28px}
label.cart-select-all{flex-direction:row;justify-content:flex-start;margin:0;line-height:1.4}label.cart-select-all input{flex:0 0 20px;margin:0;min-height:20px;padding:0}
.stars-meter{width:max-content}
.unified-article-editor{border:1px solid #ccc;background:white;margin:20px 0 30px}.article-format-toolbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:10px;background:#f8f7f5;border-bottom:1px solid #ddd}.article-format-toolbar button{display:flex;align-items:center;justify-content:center;gap:5px;min-width:34px;height:36px;background:white;border:1px solid transparent;padding:7px;font-size:12px}.article-format-toolbar button:hover,.article-format-toolbar button[aria-pressed=true]{border-color:#854a35;background:#f0e7e2;color:#854a35}.article-format-toolbar select{width:155px;min-height:36px;padding:7px;font-size:13px;margin:0}.toolbar-divider{height:22px;width:1px;background:#ddd;margin:0 3px}.article-writing-area{padding:32px;min-height:520px;max-height:none;font-size:17px;line-height:1.75;overflow-wrap:anywhere;outline:none;color:#171717}.article-writing-area:focus{box-shadow:inset 0 0 0 1px #854a35}.article-writing-area p{margin:0 0 20px;min-height:1em}.article-writing-area h2{font-size:28px;font-weight:600;margin:28px 0 16px}.article-writing-area h3{font-size:23px;margin:24px 0 14px}.article-writing-area ul,.article-writing-area ol{padding-left:26px}.article-writing-area blockquote{border-left:3px solid #854a35;margin:20px 0;padding:12px 20px;background:#f6f3ef}.article-writing-area a,.article-body a:not(.button){text-decoration:underline;text-underline-offset:3px}.article-writing-area a[data-article-button=true],.article-body .article-button{display:inline-flex;background:#171717;color:white;text-decoration:none;padding:12px 26px;font-size:15px;gap:16px}.article-writing-area figure{margin:24px 0}.article-writing-area img{max-width:100%;height:auto}.article-writing-area figcaption{font-size:13px;color:#777}.article-writing-area [data-products]{padding:20px;background:#f1eeeb;border:1px dashed #bda797;font-size:14px}.editor-hint{padding:14px 20px;border-top:1px solid #eee;color:#777;font-size:12px;margin:0}.article-insert-panel{background:#faf8f5;border-bottom:1px solid #ddd;padding:22px;position:relative;display:grid;gap:14px}.article-insert-panel label{display:grid;gap:6px}.article-insert-panel .close-insert{position:absolute;right:10px;top:10px}.article-insert-panel>.button{justify-self:start}.article-body h3{font-size:23px;line-height:1.4;margin:28px 0 16px;scroll-margin-top:140px}.article-body li{white-space:pre-wrap}.home-articles-manager{padding:24px;background:#fff;border:1px solid #ddd;margin-bottom:30px}.home-articles-manager summary{font-size:19px;font-weight:600;cursor:pointer}.home-article-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.home-article-slots label{display:grid;gap:12px;align-content:start}.home-article-slots select{max-width:100%;width:100%}.home-article-slots img{width:100%;height:120px;object-fit:cover}.journal-grid.home-journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.article-writing-area{padding:20px;min-height:400px}.article-format-toolbar{position:static}.home-article-slots{grid-template-columns:1fr}.home-article-slots img{height:140px}.journal-grid.home-journal-grid{grid-template-columns:1fr}}
.article-writing-area a[data-article-button=true]{display:table;margin:16px 0}.admin-sidebar>nav{margin-top:30px}
/* Keep mobile logo and all action icons in separate grid columns. */
@media(max-width:700px){.header-main{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:6px;padding:0 12px;height:68px;min-height:68px}.header-main>.logo{position:static;left:auto;transform:none;justify-self:center;font-size:clamp(25px,7vw,32px);letter-spacing:-1.9px;min-width:0}.header-main>.audience{width:32px;gap:0}.header-main>.audience>.icon{width:32px;min-width:32px;height:40px;padding:4px}.header-main>.header-actions{gap:0;flex-wrap:nowrap;min-width:0}.header-main>.header-actions>.icon,.header-main>.header-actions>.bag-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:40px;padding:5px;gap:0}.header-main>.header-actions svg{width:20px;height:20px}.header-main>.header-actions small{position:absolute;right:0;top:0;min-width:14px;height:14px;line-height:14px;font-size:9px;padding:0 2px}.nav-row{scrollbar-width:none}.nav-row::-webkit-scrollbar{display:none}}

/* Compact storefront rhythm on phones; desktop proportions stay unchanged. */
@media(max-width:700px){
 .lamoda-showcase{padding-top:12px}.campaign-caption{gap:8px;padding-top:10px}.campaign-caption strong{font-size:17px;line-height:1.3}.campaign-caption span{font-size:13px}.campaign-controls{font-size:13px;gap:5px}.campaign-controls button{min-width:36px;min-height:40px}
 .side-campaigns{gap:12px;margin-top:16px}.side-campaigns strong{font-size:14px;line-height:1.35}.side-campaigns> a>span{font-size:12px}
 .ga-stories{margin:20px 0}.ga-story-strip{gap:12px}.ga-story-strip>button{flex-basis:64px}.ga-story-strip img{width:54px;height:54px}
 .section{padding-top:26px}.section-head{margin-bottom:16px}.section-head h2,.home-section-title,.category-heading{font-size:20px}.lamoda-category-track{grid-auto-columns:140px;grid-template-rows:repeat(2,68px);gap:10px}
 .scenario-showcase{margin-top:26px;margin-bottom:28px}.scenario-rail{grid-auto-columns:64%;gap:12px}.scenario-photo{aspect-ratio:1}.home-grid{gap:22px 12px}
 .journal-home{margin-top:28px;margin-bottom:28px}.journal-lead-image img{height:190px}.journal-lead-copy{padding:18px}.journal-lead-copy h3{font-size:21px;line-height:1.35}.journal-lead-copy p{font-size:14px}.journal-card>h3{font-size:19px}.journal-text h3{font-size:21px}.journal-grid{gap:20px}
 .buybox h1,.account-heading h1,.sunlight-cart h1,.checkout h1,.journal-index h1{font-size:25px;line-height:1.25}.account-auth-intro h1{font-size:28px}.gallery{margin-bottom:20px}.reviews-section>h2,.checkout-fields h2{font-size:22px}.account-nav{margin-bottom:20px}.account-auth-intro{padding-bottom:20px}.cart-summary{padding:20px 16px}
 .article-header p,.article-body{font-size:16px}.article-body h2{font-size:23px}.article-body h3{font-size:20px}
}

.home-journal-rail{display:contents}.home-journal-controls{display:none}
@media(max-width:700px){
 .home-journal-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;align-items:stretch;padding-bottom:4px}.home-journal-rail::-webkit-scrollbar{display:none}
 .home-journal-rail .home-journal-grid{display:contents}
 .home-journal-rail .journal-card{flex:0 0 90%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}
 .home-journal-rail .journal-lead{flex-direction:column-reverse;justify-content:flex-end}
 .home-journal-rail .journal-card-art,.home-journal-rail .journal-lead-image{height:190px;min-height:190px;aspect-ratio:auto}
 .home-journal-rail .journal-card-art img,.home-journal-rail .journal-lead-image img{height:190px;width:100%;object-fit:cover}
 .home-journal-rail .journal-card>h3{margin:16px 0;font-size:20px;line-height:1.35}
 .home-journal-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.home-journal-controls button{width:40px;height:40px}
}

@media(min-width:701px){.journal-grid.home-journal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-article-slots{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Lamoda desktop wrapper: 1240px including 20px inner gutters. */
@media(min-width:1001px){
 .container,.header-main,.nav-row,main>.section,footer{width:100%;max-width:1240px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
}

/* Thin retail icon strokes and the reference's rounded heart silhouette. */
.lucide{stroke-width:1}.pawzaar-heart{stroke-width:1}
.product-card .favorite{background:transparent;border-radius:0;color:#c2c2c2;width:40px;height:40px;right:5px;top:5px}
.product-card .favorite .pawzaar-heart{width:24px;height:24px}
.product-card .favorite:hover{color:#181818}.product-card .favorite.selected{color:var(--accent)}

.bulk-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.bulk-products input[type=checkbox]{width:18px;height:18px;padding:0;cursor:pointer}.bulk-selection{display:flex;gap:24px;align-items:center;margin:20px 0;flex-wrap:wrap}.bulk-actions{border:1px solid #d9cec8;padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bulk-actions legend{font-weight:600;padding:0 8px}.bulk-explanation,.bulk-actions>.button{grid-column:1/-1}.bulk-explanation{font-size:13px;line-height:1.6;color:#666}.bulk-actions>.button{justify-self:start}.bulk-preview{margin:24px 0;padding:20px;background:#faf8f6;border:1px solid #ddd}.bulk-preview .table-scroll{max-height:420px;overflow:auto}.bulk-products td small{display:block;font-size:12px;color:#777;margin-top:5px}.bulk-group{background:#f4f1ee}.bulk-group th{text-align:left}.bulk-products th:first-child,.bulk-products td:first-child{width:44px}@media(max-width:700px){.bulk-filters,.bulk-actions{grid-template-columns:1fr}.bulk-preview{padding:12px}.bulk-products .table-product{min-width:220px}}

.product-extra-categories{border:1px solid #ddd;padding:18px;margin:20px 0;max-height:340px;overflow:auto}.product-extra-categories .check{display:flex;flex-direction:row;align-items:center;gap:10px;margin:8px 0}.product-extra-categories input{width:18px;height:18px}.product-extra-categories small{color:#888;font-size:10px;overflow-wrap:anywhere}

/* Published legal documents: preserve source paragraphs and wrap on mobile. */
.content-page p.legal-paragraph { white-space: normal; overflow-wrap: anywhere; line-height: 1.65; }
.footer-bottom { gap: 16px; flex-wrap: wrap; }
@media (max-width: 760px) {
  .content-page { padding-top: 24px; padding-bottom: 36px; }
  .content-page h1 { font-size: 24px; line-height: 1.2; margin-bottom: 24px; overflow-wrap: anywhere; }
  .content-page p, .content-page p.legal-paragraph { font-size: 14px; line-height: 1.55; margin: 0 0 14px; }
  .content-page .underlink { font-size: 14px; }
}

.product-colors{margin-bottom:20px}.product-colors p{margin:0 0 10px}.color-product-links{display:flex;gap:8px;flex-wrap:wrap}.color-product-links a{display:block;width:56px;height:66px;border:1px solid #ddd;padding:3px}.color-product-links a.selected{border:2px solid #854a35;padding:2px}.color-product-links img,.color-product-links span{display:block;width:100%;height:100%;object-fit:contain;background:#f6f6f6}.color-product-links a:hover{border-color:#854a35}

.order-status-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.order-status-tabs button{display:flex;align-items:center;gap:8px;border:1px solid #ddd;border-radius:6px;padding:10px 14px;background:white;color:#444}.order-status-tabs button[aria-pressed=true]{background:#854a35;color:white;border-color:#854a35}.order-status-tabs span{font-size:12px;opacity:.8}.order-status-tabs+label{display:block;max-width:480px;margin-bottom:20px}

.order-cancel{margin:16px 0}.order-cancel button+button{margin-left:16px}

.color-picker-admin{border:1px solid #ddd;border-radius:8px;padding:16px;margin:20px 0;min-width:0}
.color-picker-admin legend{padding:0 6px;font-weight:600}.color-picker-admin p{font-size:13px;margin:0 0 12px}
.color-picker-count{font-size:12px;color:#666;margin:10px 0}.color-picker-list{max-height:340px;overflow-y:auto;overscroll-behavior:contain;border-top:1px solid #eee}
.editor-drawer .color-picker-row{display:flex;flex-direction:row;align-items:center;gap:10px;margin:0;padding:10px 4px;border-bottom:1px solid #eee;cursor:pointer}
.color-picker-row:hover{background:#faf7f5}.editor-drawer .color-picker-row input{width:18px;height:18px;min-width:18px;margin:0;padding:0;accent-color:#854a35}
.color-picker-row img{width:42px;height:48px;object-fit:contain;background:#f6f6f6}.color-picker-row span{min-width:0}.color-picker-row strong{display:block;font-size:14px;font-weight:500;overflow-wrap:anywhere}.color-picker-row small{display:block;color:#777;font-size:12px;margin-top:3px}

.photo-choice{border:1px solid #ddd;padding:12px;margin:14px 0;min-width:0}.photo-choice legend{font-size:14px}.photo-choice-options{display:flex;flex-wrap:wrap;gap:8px}.photo-choice-options button{border:1px solid #ddd;padding:4px;background:white;min-height:52px;font-size:12px}.photo-choice-options button[aria-pressed=true]{border:2px solid #854a35;padding:3px}.photo-choice-options img{width:64px;height:72px;object-fit:contain;display:block}.hardware-photo-editor{margin:22px 0;padding:16px;background:#faf8f6}.hardware-photo-editor .muted,.variant-photo-details .muted{font-size:12px}.variant-photo-details{margin:12px 0}.variant-photo-details summary{cursor:pointer;font-size:13px}

.product-editor-card{padding:0;border:1px solid #e1e1e1;border-radius:9px;margin:12px 0;background:#fff;min-width:0}.product-editor-card>summary{justify-content:flex-start;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:16px;list-style:none;font-weight:600;font-size:15px}.product-editor-card>summary::-webkit-details-marker{display:none}.product-editor-card>summary:before{content:'›';font-size:22px;line-height:1;transition:transform .15s}.product-editor-card[open]>summary:before{transform:rotate(90deg)}.product-editor-card>summary small{font-size:12px;font-weight:400;color:#777;margin-left:auto}.product-editor-card[open]>summary{border-bottom:1px solid #eee}.product-editor-card-body{padding:16px}.product-editor-card-body>.product-extra-categories{border:0;margin:0;padding:0}.product-editor-card.variant-editor{padding:0;background:#fafafa}.product-editor-card.variant-editor summary{font-size:13px}.product-editor-card-body .hardware-photo-editor{padding:0}
.product-editor-card-actions{display:flex;align-items:center}.product-editor-card-actions .icon{width:32px;height:32px;min-height:32px;padding:0;border:0;border-radius:4px;display:grid;place-items:center;background:transparent}.product-editor-card-actions .icon:not(:disabled){color:#a43e38}.product-editor-card-actions .icon:not(:disabled):hover{background:#f6e8e6}.product-editor-card-actions .icon:disabled{color:#bbb;cursor:not-allowed}
@media(max-width:600px){.product-editor-card.variant-editor>summary{flex-wrap:nowrap;gap:6px;padding:12px}.product-editor-card.variant-editor>summary>span:first-of-type{min-width:0;overflow-wrap:anywhere}.product-editor-card.variant-editor>summary small,.product-editor-card.variant-editor>summary .product-editor-card-actions{flex:0 0 auto}.product-editor-card.variant-editor>summary .product-editor-card-actions{margin-left:0}.product-editor-card.variant-editor .product-editor-card-actions .icon{width:28px;height:28px;min-height:28px}}

/* Directional campaign transition; the outgoing layer never intercepts clicks. */
.campaign-slider{position:relative;overflow:hidden;isolation:isolate}
.campaign-slider .campaign-outgoing{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.campaign-slider .campaign-incoming{position:relative;z-index:2;animation:none}
.campaign-slider.is-sliding .campaign-incoming{animation:campaign-slide-in .65s cubic-bezier(.22,.68,.12,1) both;will-change:transform}
.campaign-slider.is-sliding .campaign-outgoing{animation:campaign-slide-out .65s cubic-bezier(.22,.68,.12,1) both;will-change:transform}
@keyframes campaign-slide-in{from{transform:translate3d(var(--slide-in),0,0)}to{transform:translate3d(0,0,0)}}
@keyframes campaign-slide-out{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--slide-out),0,0)}}
@media(prefers-reduced-motion:reduce){.campaign-slider.is-sliding .campaign-incoming,.campaign-slider.is-sliding .campaign-outgoing{animation:none}}

/* Consistent removal controls for editable media and list items. */
.removable-media,.photo-option{position:relative;display:inline-block;max-width:100%;vertical-align:top}
.removable-media{margin:10px 0}.removable-media>img,.removable-media>video{display:block;max-width:100%;width:220px;max-height:220px;object-fit:contain;background:#f6f6f6}
.media-remove,.photo-choice-options button.media-remove{position:absolute;top:4px;right:4px;width:28px;height:28px;min-height:28px;padding:0;border:1px solid #ddd;border-radius:50%;background:#fff;color:#333;display:grid;place-items:center;box-shadow:0 1px 5px #0002;z-index:2;cursor:pointer}
.media-remove:hover,.photo-choice-options button.media-remove:hover{background:#fbecea;color:#a43e38;border-color:#a43e38}.photo-option>button:first-child{padding-top:20px}
.admin-delete{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-left:10px;border:1px solid #ddd;border-radius:5px;background:white;color:#a43e38;vertical-align:middle;cursor:pointer}.admin-delete:hover{background:#fbecea}.admin-delete:disabled{opacity:.4;cursor:not-allowed}
.article-remove-block{position:sticky;bottom:12px;display:flex;justify-content:flex-end;pointer-events:none}.article-remove-block button{pointer-events:auto;background:#fff;border:1px solid #ddd;padding:8px 12px;display:flex;align-items:center;gap:6px;color:#a43e38;box-shadow:0 2px 10px #0002}

.password-dialog{position:relative;width:min(460px,94vw);max-height:90vh;overflow:auto;padding:32px}.password-dialog .account-form{border:0;padding:0}.password-dialog .underlink,.auth-card .underlink{display:block;margin-top:16px;background:transparent}.password-dialog .password-close{position:absolute;top:12px;right:12px}.password-dialog h2{font-size:24px;padding-right:20px}.password-dialog p{font-size:14px;line-height:1.6}.password-dialog input{font-size:16px}.password-dialog .button{width:100%}.auth-card input[name=code]{font-size:24px;letter-spacing:6px}

.scenario-photo {overflow:hidden;isolation:isolate;background:#f2f2f2;}
.scenario-photo img {display:block;width:100%;height:100%;object-fit:cover;}
.scenario-photo.uniform-background img {mix-blend-mode:darken;}
.showcase-editor .story-slide-editor .upload {display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px;border:1px dashed #aaa;border-radius:8px;}

.success-check.payment-error{background:#fbe9e7;color:#a63a32}
.success-check.payment-neutral{background:#f2f2f2;color:#666}

.order-result-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:24px 32px;margin-top:28px}
.order-result-actions .underlink,.order-result-actions .button{margin:0}
.payment-result .button{margin:12px}
@media(max-width:600px){.order-result-actions{flex-direction:column;gap:24px}.order-result-actions .button{width:100%;max-width:340px}.payment-result .button{display:block;margin:12px auto;width:100%;max-width:340px}}
