

:root {
  --ink: #16151a;
  --muted: #6c6a74;
  --line: #e8e7ec;
  --paper: #ffffff;
  --soft: #f6f6f8;
  --violet: #6753f3;
  --violet-dark: #4c38d5;
  --lime: #dfff68;
  --shadow: 0 16px 48px rgba(22, 21, 26, 0.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, Helvetica, sans-serif; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }

.announcement {
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 0 20px;
  color: #f5f3ff;
  background: #211d31;
  font-size: 12px;
  letter-spacing: .035em;
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 70px;
  display: grid;
  grid-template-columns: 220px minmax(280px, 680px) 1fr;
  align-items: center;
  gap: 24px;
  padding: 10px max(28px, calc((100vw - 1440px) / 2));
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(18px);
}

.brand, .footer-brand { display: flex; align-items: center; gap: 10px; }
.brand-mark { width: 34px; height: 34px; border-radius: 11px; display: grid; place-items: center; color: white; background: var(--violet); font-size: 17px; font-weight: 900; box-shadow: 0 6px 18px rgba(103, 83, 243, .24); }
.brand > span:last-child, .footer-brand > div { display: grid; gap: 1px; }
.brand strong, .footer-brand b { font-size: 14px; letter-spacing: .12em; }
.brand small, .footer-brand small { color: var(--muted); font-size: 12px; }

.search, .hero-search {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  border: 1px solid #d9d7df;
  background: #f8f8fa;
  transition: .2s ease;
}
.search { height: 44px; border-radius: 14px; padding: 0 14px; }
.search:focus-within, .hero-search:focus-within { border-color: var(--violet); box-shadow: 0 0 0 3px rgba(103, 83, 243, .12); background: white; }
.search > span, .hero-search > span { color: var(--violet); font-size: 23px; transform: rotate(-18deg); }
.search input, .hero-search input { min-width: 0; flex: 1; border: 0; outline: 0; background: transparent; color: var(--ink); }
.search input { font-size: 13px; }
.search button { border: 0; background: transparent; color: var(--muted); font-size: 21px; cursor: pointer; }

.header-actions { display: flex; justify-content: flex-end; align-items: center; gap: 8px; }
.header-actions a, .icon-action { border: 0; background: transparent; padding: 9px 10px; font-size: 12px; font-weight: 700; border-radius: 10px; cursor: pointer; white-space: nowrap; }
.header-actions a:hover, .icon-action:hover { background: var(--soft); }
.icon-action { position: relative; display: flex; align-items: center; gap: 6px; }
.icon-action > span { color: var(--violet); font-size: 17px; }
.icon-action > b, .mobile-nav b { min-width: 17px; height: 17px; display: grid; place-items: center; border-radius: 20px; color: white; background: var(--violet); font-size: 12px; }

.hero {
  position: relative;
  min-height: 540px;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(500px, 1.05fr);
  gap: 58px;
  align-items: center;
  max-width: 1440px;
  margin: 0 auto;
  padding: 58px 44px 68px;
  overflow: hidden;
}
.hero::before { content: ""; position: absolute; right: -8%; top: 1%; width: 55%; height: 92%; z-index: -1; border-radius: 48% 52% 45% 55%; background: radial-gradient(circle at 55% 50%, #efedff 0, #f6f5ff 56%, transparent 57%); }
.eyebrow { margin: 0 0 12px; color: var(--violet); font-size: 12px; font-weight: 900; letter-spacing: .14em; }
.hero h1 { max-width: 690px; margin: 0; font-size: clamp(42px, 4.2vw, 68px); line-height: .99; letter-spacing: -.06em; }
.hero-copy > p:not(.eyebrow) { max-width: 610px; margin: 22px 0 0; color: var(--muted); font-size: 16px; line-height: 1.6; }
.hero-search-row { display: flex; align-items: stretch; gap: 10px; max-width: 650px; margin-top: 28px; }
.hero-search { min-width: 0; flex: 1; min-height: 50px; padding: 0 16px; border-radius: 14px; background: white; box-shadow: 0 10px 32px rgba(22, 21, 26, .08); }
.hero-search input { font-size: 13px; }
.primary-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; border: 0; border-radius: 13px; padding: 0 20px; color: white; background: var(--violet); font-size: 13px; font-weight: 800; cursor: pointer; transition: .2s ease; }
.primary-button:hover { background: var(--violet-dark); transform: translateY(-1px); }
.search-examples { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; margin-top: 13px; font-size: 12px; }
.search-examples > span { color: var(--muted); }
.search-examples button { padding: 4px 7px; border: 0; border-bottom: 1px dashed #aaa6b5; background: transparent; color: #4d4a57; cursor: pointer; }

.hero-gallery { position: relative; min-height: 410px; }
.hero-art { position: absolute; margin: 0; padding: 0; overflow: hidden; border: 7px solid white; background: #ddd; box-shadow: 0 22px 60px rgba(27, 22, 48, .18); cursor: pointer; transition: transform .3s ease; }
.hero-art:hover { z-index: 5; transform: translateY(-5px) rotate(0); }
.hero-art img { width: 100%; height: 100%; object-fit: cover; }
.hero-art-main { left: 4%; top: 30px; width: 65%; height: 340px; transform: rotate(-2.5deg); }
.hero-art-main > span { position: absolute; left: 14px; right: 14px; bottom: 14px; display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 9px 11px; border-radius: 10px; color: white; background: rgba(20, 16, 35, .72); backdrop-filter: blur(12px); text-align: left; }
.hero-art-main b { font-size: 12px; }
.hero-art-main small { font-size: 12px; }
.hero-art-top { right: 1%; top: 0; width: 34%; height: 185px; transform: rotate(4deg); }
.hero-art-bottom { right: 0; bottom: 5px; width: 38%; height: 190px; transform: rotate(2deg); }
.hero-proof { position: absolute; right: 27%; bottom: 0; z-index: 8; min-width: 136px; display: grid; gap: 2px; padding: 11px 13px; border: 1px solid rgba(255,255,255,.8); border-radius: 13px; background: rgba(255,255,255,.9); box-shadow: 0 10px 24px rgba(21,20,31,.12); backdrop-filter: blur(12px); }
.hero-proof strong { font-size: 18px; }
.hero-proof span { color: #ff9d29; font-size: 12px; letter-spacing: .05em; }
.hero-proof small { color: var(--muted); font-size: 12px; }

.trust-strip { max-width: 1340px; display: grid; grid-template-columns: repeat(4, 1fr); margin: -18px auto 54px; border: 1px solid var(--line); border-radius: 18px; background: white; box-shadow: 0 16px 38px rgba(22,21,26,.07); }
.trust-strip article { min-width: 0; display: flex; align-items: center; gap: 12px; padding: 17px 20px; border-right: 1px solid var(--line); }
.trust-strip article:last-child { border-right: 0; }
.trust-strip article > span { width: 34px; height: 34px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 11px; color: var(--violet); background: #f0eeff; font-size: 17px; font-weight: 900; }
.trust-strip div { min-width: 0; display: grid; gap: 3px; }
.trust-strip b { font-size: 12px; }
.trust-strip small { overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }

.market, .how-it-works, .seller-showcase { max-width: 1440px; margin: 0 auto; padding: 0 44px 78px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.section-heading h2, .photo-service h2 { margin: 0; font-size: clamp(28px, 2.8vw, 42px); line-height: 1.08; letter-spacing: -.045em; }
.section-heading > p { margin: 0 0 4px; color: var(--muted); font-size: 12px; }
.category-row { display: flex; gap: 7px; overflow-x: auto; padding: 22px 0 18px; scrollbar-width: none; }
.category-row::-webkit-scrollbar { display: none; }
.category-row button { flex: 0 0 auto; padding: 8px 13px; border: 1px solid var(--line); border-radius: 999px; background: white; font-size: 12px; font-weight: 700; cursor: pointer; transition: .2s ease; }
.category-row button:hover, .category-row button.active { border-color: var(--ink); color: white; background: var(--ink); }
.mobile-filter-button { display: none; }
.catalog-layout { display: grid; grid-template-columns: 218px minmax(0, 1fr); gap: 28px; }
.filters { display: grid; align-content: start; gap: 18px; }
.filter-block { display: grid; gap: 10px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.filter-block > b, .filter-title b { font-size: 12px; }
.filter-title { display: flex; align-items: center; justify-content: space-between; }
.filter-title button { border: 0; background: transparent; color: var(--muted); font-size: 12px; cursor: pointer; }
.radio-row, .check-row { display: flex; align-items: center; gap: 9px; color: #4d4b54; font-size: 12px; cursor: pointer; }
.radio-row input, .check-row input { accent-color: var(--violet); }
.price-inputs { display: flex; gap: 7px; }
.price-inputs span { flex: 1; padding: 8px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: white; font-size: 12px; }
.range-line { position: relative; height: 3px; margin: 4px 6px; background: var(--violet); }
.range-line i { position: absolute; top: 50%; width: 12px; height: 12px; border: 3px solid var(--violet); border-radius: 50%; background: white; transform: translateY(-50%); }
.range-line i:first-child { left: -3px; }.range-line i:last-child { right: -3px; }
.seller-note { display: grid; grid-template-columns: 26px 1fr; column-gap: 9px; padding: 13px; border-radius: 12px; color: #2d2751; background: #f0eeff; }
.seller-note > span { grid-row: 1 / span 2; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--violet); font-size: 12px; }
.seller-note b { font-size: 12px; }.seller-note p { margin: 3px 0 0; color: #69627f; font-size: 12px; line-height: 1.45; }

.catalog-content { min-width: 0; }
.product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 15px; }
.product-card { min-width: 0; }
.product-image-wrap { position: relative; aspect-ratio: 1 / 1.04; overflow: hidden; border-radius: 15px; background: var(--soft); }
.product-image { width: 100%; height: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.product-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.product-card:hover .product-image img { transform: scale(1.035); }
.product-badge { position: absolute; left: 9px; top: 9px; max-width: calc(100% - 56px); padding: 5px 8px; border-radius: 7px; color: white; background: rgba(27,24,36,.82); backdrop-filter: blur(9px); font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .055em; }
.service-card .product-badge { color: #252029; background: var(--lime); }
.favorite { position: absolute; right: 9px; top: 9px; width: 34px; height: 34px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; color: var(--ink); background: rgba(255,255,255,.9); font-size: 20px; cursor: pointer; box-shadow: 0 6px 16px rgba(0,0,0,.1); }
.favorite.active { color: var(--violet); }
.quick-view { position: absolute; left: 10px; right: 10px; bottom: 10px; height: 36px; border: 0; border-radius: 9px; opacity: 0; color: white; background: rgba(26,23,34,.9); font-size: 12px; font-weight: 800; cursor: pointer; transform: translateY(8px); transition: .22s ease; }
.product-card:hover .quick-view { opacity: 1; transform: translateY(0); }
.product-info { width: 100%; display: grid; gap: 5px; padding: 11px 1px 0; border: 0; background: transparent; text-align: left; cursor: pointer; }
.seller { justify-self: start; padding: 3px 6px; border-radius: 5px; font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.seller.violet { color: #4934d4; background: #eeebff; }.seller.blue { color: #11669d; background: #e7f5ff; }.seller.orange { color: #9c4c10; background: #fff0e0; }
.seller.wood { color: #77511d; background: #f6ead5; }
.product-info h3 { margin: 1px 0 0; overflow: hidden; font-size: 13px; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.rating { color: var(--muted); font-size: 12px; }.rating b { color: #e88312; }
.product-price { margin-top: 2px; color: var(--muted); font-size: 12px; }.product-price b { color: var(--ink); font-size: 14px; }
.empty-state { min-height: 360px; display: grid; place-items: center; align-content: center; gap: 9px; border: 1px dashed #d5d2dc; border-radius: 18px; text-align: center; }
.empty-state > span { color: var(--violet); font-size: 36px; }.empty-state h3 { margin: 0; font-size: 20px; }.empty-state p { margin: 0; color: var(--muted); font-size: 12px; }.empty-state button { margin-top: 7px; padding: 9px 13px; border: 0; border-radius: 9px; color: white; background: var(--violet); font-size: 12px; cursor: pointer; }
.frame-card .product-image-wrap { background: linear-gradient(145deg, #f7f6f3, #ebe8e2); }
.product-image img.contain-product { object-fit: contain; padding: 19px; }
.filter-chips { display: flex; flex-wrap: wrap; gap: 5px; }
.filter-chips button { padding: 5px 7px; border: 1px solid var(--line); border-radius: 6px; background: white; color: var(--muted); font-size: 12px; cursor: pointer; }
.filter-chips button:hover { border-color: var(--violet); color: var(--violet); }

.seller-showcase { padding-bottom: 72px; }
.seller-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 24px; }
.seller-grid > button { min-width: 0; display: grid; grid-template-columns: 42px 1fr 20px; align-items: center; gap: 12px; padding: 17px; border: 1px solid var(--line); border-radius: 15px; background: white; text-align: left; cursor: pointer; transition: .2s ease; }
.seller-grid > button:hover { border-color: #cbc7d4; transform: translateY(-2px); box-shadow: 0 12px 28px rgba(22,21,26,.07); }
.seller-logo { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; font-size: 12px; font-weight: 900; }
.seller-logo.violet { color: #4934d4; background: #eeebff; }.seller-logo.blue { color: #11669d; background: #e7f5ff; }.seller-logo.wood { color: #77511d; background: #f6ead5; }
.seller-grid div { min-width: 0; display: grid; gap: 4px; }.seller-grid b { font-size: 12px; }.seller-grid p { margin: 0; overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.seller-grid small { color: #9a96a1; font-size: 12px; }.seller-grid i { color: var(--violet); font-size: 17px; font-style: normal; }

.photo-service { max-width: 1352px; min-height: 410px; display: grid; grid-template-columns: 1fr .9fr; align-items: center; gap: 70px; margin: 0 auto 80px; padding: 48px 64px; overflow: hidden; border-radius: 28px; color: white; background: #211d31; }
.photo-service > div:first-child { position: relative; z-index: 2; }
.photo-service .eyebrow { color: var(--lime); }
.photo-service h2 { max-width: 620px; font-size: clamp(30px, 3.2vw, 47px); }
.photo-service p:not(.eyebrow) { max-width: 580px; margin: 17px 0; color: #c9c4d7; font-size: 13px; line-height: 1.6; }
.style-pills { display: flex; flex-wrap: wrap; gap: 7px; margin: 0 0 23px; }
.style-pills span { padding: 6px 9px; border: 1px solid #494257; border-radius: 999px; color: #e5e1ec; font-size: 12px; }
.photo-service .primary-button { color: #221d31; background: var(--lime); }
.service-visual { position: relative; height: 310px; }
.service-visual::before { content: ""; position: absolute; inset: -120px -160px -120px -50px; background: radial-gradient(circle, rgba(103,83,243,.65), transparent 62%); }
.service-visual img { position: absolute; inset: 0 8% 0 auto; width: 76%; height: 100%; object-fit: cover; border: 8px solid white; transform: rotate(3deg); box-shadow: 0 22px 58px rgba(0,0,0,.36); }
.service-card-float { position: absolute; left: 0; bottom: 22px; display: grid; gap: 3px; padding: 12px 15px; border-radius: 12px; color: var(--ink); background: white; box-shadow: var(--shadow); }
.service-card-float b { font-size: 12px; }.service-card-float span { color: var(--muted); font-size: 12px; }

.how-it-works { padding-bottom: 90px; }
.steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 26px; }
.steps article { display: grid; gap: 9px; min-height: 156px; padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: white; }
.steps span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; color: var(--violet); background: #efedff; font-size: 12px; font-weight: 900; }
.steps b { align-self: end; font-size: 13px; }.steps p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.45; }

footer { display: grid; grid-template-columns: 1.25fr .8fr .8fr 1.15fr; gap: 40px; padding: 44px max(44px, calc((100vw - 1352px) / 2)); color: #e6e2ec; background: #17141e; }
footer > div:not(.footer-brand) { display: grid; align-content: start; gap: 9px; }
footer > div > b { color: white; font-size: 12px; }
footer a, footer p { margin: 0; color: #a9a4b4; font-size: 12px; line-height: 1.55; }
footer button { justify-self: start; padding: 8px 11px; border: 1px solid #3d3749; border-radius: 8px; color: white; background: transparent; font-size: 12px; cursor: pointer; }
footer .brand-mark { background: var(--violet); }.footer-brand small { color: #9f9aa9; }
.footer-legal { grid-column: 1 / -1; padding-top: 22px; border-top: 1px solid #302c39; }

.overlay { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 20px; }
.overlay-backdrop { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: rgba(17,14,24,.72); backdrop-filter: blur(8px); cursor: default; }
.product-modal { position: relative; z-index: 1; width: min(1040px, 96vw); max-height: 92vh; display: grid; grid-template-columns: .9fr 1.1fr; overflow: auto; border-radius: 22px; background: white; box-shadow: 0 30px 90px rgba(0,0,0,.28); }
.modal-close { position: absolute; right: 14px; top: 14px; z-index: 4; width: 32px; height: 32px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: white; font-size: 20px; cursor: pointer; }
.crop-column { min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 38px; background: #f0f0f3; }
.crop-frame { position: relative; overflow: hidden; border: 10px solid #19171d; background: white; box-shadow: 0 20px 45px rgba(24,21,32,.23); transition: aspect-ratio .25s ease, width .25s ease, height .25s ease; }
.crop-frame.portrait { width: auto; height: min(410px, 50vh); max-width: 82%; }
.crop-frame.landscape { width: min(410px, 90%); height: auto; max-height: 410px; }
.crop-frame img { width: 100%; height: 100%; object-fit: cover; transition: object-position .25s ease; }
.frame-edge { position: absolute; inset: 0; border: 3px solid rgba(255,255,255,.8); box-shadow: inset 0 0 0 1px rgba(0,0,0,.2); pointer-events: none; }
.crop-caption { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 18px; }
.crop-caption > span:first-child { display: grid; gap: 3px; }.crop-caption b { font-size: 12px; }.crop-caption small { color: var(--muted); font-size: 12px; }
.crop-ok { padding: 5px 7px; border-radius: 6px; color: #206c45; background: #dcf8e8; font-size: 12px; font-weight: 800; white-space: nowrap; }
.position-control { width: 100%; display: flex; align-items: center; gap: 5px; margin-top: 12px; }
.position-control > span { margin-right: auto; color: var(--muted); font-size: 12px; }
.position-control button { padding: 5px 7px; border: 1px solid #d7d5dc; border-radius: 6px; background: white; font-size: 12px; cursor: pointer; }.position-control button.active { border-color: var(--violet); color: var(--violet); background: #efedff; }
.source-preview { position: relative; width: min(340px, 90%); aspect-ratio: 16 / 9; margin-bottom: 15px; overflow: hidden; border-radius: 9px; background: #ddd; box-shadow: 0 8px 20px rgba(24,21,32,.12); }
.source-preview > img { width: 100%; height: 100%; object-fit: cover; }
.source-preview > small { position: absolute; left: 7px; bottom: 6px; z-index: 3; padding: 4px 6px; border-radius: 5px; color: white; background: rgba(18,16,23,.72); font-size: 12px; font-weight: 900; letter-spacing: .055em; }
.source-shade { position: absolute; z-index: 2; border: 2px solid white; box-shadow: 0 0 0 999px rgba(13,11,18,.56); transition: left .25s ease, top .25s ease, width .25s ease, height .25s ease; }
.frame-preview-column { justify-content: center; }
.frame-product-visual { width: min(390px, 92%); aspect-ratio: 1 / 1; display: grid; place-items: center; overflow: hidden; border-radius: 16px; background: linear-gradient(145deg, #faf9f7, #e9e6e0); box-shadow: 0 18px 42px rgba(24,21,32,.13); }
.frame-product-visual img { width: 100%; height: 100%; object-fit: contain; padding: 20px; }
.frame-facts { width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-top: 14px; }
.frame-facts span { min-width: 0; display: grid; gap: 3px; padding: 8px; border-radius: 8px; background: rgba(255,255,255,.72); }.frame-facts b { font-size: 12px; }.frame-facts small { overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.config-column { min-width: 0; padding: 40px 42px 28px; }
.modal-badge { display: inline-flex; margin-bottom: 9px; padding: 5px 7px; border-radius: 6px; color: #282031; background: var(--lime); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.config-column > h2 { margin: 9px 0 4px; padding-right: 32px; font-size: 29px; line-height: 1.1; letter-spacing: -.04em; }
.modal-rating { margin: 0 0 17px; color: #eb891f; font-size: 12px; font-weight: 800; }.modal-rating span { color: var(--muted); font-weight: 400; }
.config-group { display: grid; gap: 7px; margin-top: 15px; }
.config-label { display: flex; justify-content: space-between; align-items: center; }.config-label b { font-size: 12px; }.config-label span { color: var(--muted); font-size: 12px; }
.size-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
.size-grid button { min-height: 49px; display: grid; place-items: center; gap: 2px; padding: 5px; border: 1px solid var(--line); border-radius: 8px; background: white; cursor: pointer; }.size-grid button:hover, .size-grid button.active { border-color: var(--violet); box-shadow: inset 0 0 0 1px var(--violet); background: #faf9ff; }
.size-grid b { font-size: 12px; }.size-grid small { color: var(--muted); font-size: 12px; }
.orientation-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }
.orientation-switch > button { min-width: 0; display: grid; grid-template-columns: 30px 1fr; align-items: center; gap: 9px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 9px; background: white; text-align: left; cursor: pointer; }
.orientation-switch > button:hover, .orientation-switch > button.active { border-color: var(--violet); box-shadow: inset 0 0 0 1px var(--violet); background: #faf9ff; }
.orientation-switch > button > span { min-width: 0; display: grid; gap: 3px; }
.orientation-switch b { font-size: 12px; }.orientation-switch small { overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.orientation-icon { display: block; justify-self: center; border: 3px solid #4d4958; background: linear-gradient(145deg, #bcb5ff, #eeecff); box-shadow: inset 0 0 0 1px white; }
.orientation-icon.portrait { width: 18px; height: 25px; }.orientation-icon.landscape { width: 27px; height: 18px; }
.material-card { width: 100%; min-height: 53px; display: grid; grid-template-columns: 14px 1fr auto; align-items: center; gap: 9px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; background: white; text-align: left; cursor: pointer; }.material-card.active { border-color: var(--violet); box-shadow: inset 0 0 0 1px var(--violet); background: #fbfaff; }
.material-radio { width: 12px; height: 12px; border: 3px solid white; border-radius: 50%; box-shadow: 0 0 0 1px #aaa7b0; }.material-card.active .material-radio { background: var(--violet); box-shadow: 0 0 0 1px var(--violet); }
.material-card > span:nth-child(2) { display: grid; gap: 3px; }.material-card b { font-size: 12px; }.material-card small { color: var(--muted); font-size: 12px; }.material-card strong { font-size: 12px; }
.delivery-line { display: flex; align-items: center; gap: 10px; margin-top: 15px; padding: 11px; border-radius: 9px; background: var(--soft); }.delivery-line > span { color: var(--violet); font-size: 21px; }.delivery-line div { display: grid; gap: 2px; }.delivery-line b { font-size: 12px; }.delivery-line small { color: var(--muted); font-size: 12px; }
.buy-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }.buy-row > span { display: grid; gap: 2px; }.buy-row small { color: var(--muted); font-size: 12px; }.buy-row b { font-size: 22px; }.buy-row > button, .checkout-button { flex: 1; height: 46px; border: 0; border-radius: 11px; color: white; background: var(--violet); font-size: 12px; font-weight: 900; cursor: pointer; }.buy-row > button:hover, .checkout-button:hover { background: var(--violet-dark); }
.upload-box { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 9px; margin: 13px 0; padding: 10px; border: 1px dashed #a9a4b3; border-radius: 9px; }.upload-box > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 8px; color: var(--violet); background: #efedff; }.upload-box div { display: grid; gap: 2px; }.upload-box b { font-size: 12px; }.upload-box small { color: var(--muted); font-size: 12px; }.upload-box button { padding: 7px 9px; border: 0; border-radius: 7px; color: white; background: var(--ink); font-size: 12px; cursor: pointer; }

.cart-overlay { place-items: stretch end; padding: 0; }
.cart-drawer { position: relative; z-index: 1; width: min(420px, 96vw); height: 100%; padding: 34px; background: white; box-shadow: -20px 0 70px rgba(0,0,0,.2); }
.cart-drawer h2 { margin: 0 0 25px; font-size: 32px; letter-spacing: -.04em; }
.cart-empty { min-height: 70vh; display: grid; place-items: center; align-content: center; gap: 9px; text-align: center; }.cart-empty > span { color: var(--violet); font-size: 40px; }.cart-empty > b { font-size: 15px; }.cart-empty p { margin: 0; color: var(--muted); font-size: 12px; }.cart-empty button { margin-top: 9px; padding: 9px 12px; border: 0; border-radius: 8px; color: white; background: var(--violet); font-size: 12px; cursor: pointer; }
.cart-item { display: grid; grid-template-columns: 84px 1fr 24px; gap: 12px; padding: 12px 0 20px; border-bottom: 1px solid var(--line); }.cart-item img { width: 84px; height: 96px; border-radius: 8px; object-fit: cover; }.cart-item div { display: grid; align-content: start; gap: 5px; }.cart-item b { font-size: 12px; }.cart-item small { color: var(--muted); font-size: 12px; line-height: 1.4; }.cart-item strong { margin-top: auto; font-size: 13px; }.cart-item > button { align-self: start; border: 0; background: transparent; color: var(--muted); font-size: 18px; cursor: pointer; }
.cart-list { max-height: 52vh; overflow: auto; padding-right: 4px; }
.cart-item img.cart-contain { object-fit: contain; padding: 7px; background: #f1efeb; }
.cart-multiple { color: var(--muted); font-size: 12px; }
.cart-summary { display: grid; grid-template-columns: 1fr auto; gap: 10px 20px; margin: 22px 0; }.cart-summary span, .cart-summary b { color: var(--muted); font-size: 12px; }.cart-summary b { font-weight: 500; }.cart-summary strong { padding-top: 12px; border-top: 1px solid var(--line); font-size: 14px; }
.checkout-button { width: 100%; }.checkout-note { display: block; margin-top: 10px; color: var(--muted); font-size: 12px; line-height: 1.5; text-align: center; }
.checkout-overlay { z-index: 120; }
.checkout-modal { position: relative; z-index: 1; width: min(1160px, 96vw); max-height: 94vh; overflow: auto; border-radius: 22px; background: #f6f6f8; box-shadow: 0 30px 90px rgba(0,0,0,.3); }
.checkout-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; padding: 30px 36px 22px; border-bottom: 1px solid var(--line); background: white; }
.checkout-head h2 { margin: 0; font-size: 35px; letter-spacing: -.045em; }.checkout-head > div:first-child > p:last-child { max-width: 590px; margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
.checkout-steps { display: flex; align-items: center; gap: 15px; padding-bottom: 4px; color: #9a97a1; font-size: 12px; white-space: nowrap; }
.checkout-steps span { display: flex; align-items: center; gap: 5px; }.checkout-steps b { width: 20px; height: 20px; display: grid; place-items: center; border: 1px solid #d6d3dd; border-radius: 50%; font-size: 12px; }
.checkout-steps .done, .checkout-steps .active { color: var(--violet); font-weight: 800; }.checkout-steps .done b { color: white; border-color: var(--violet); background: var(--violet); }.checkout-steps .active b { border-color: var(--violet); background: #efedff; }
.checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 16px; padding: 18px; }
.checkout-fields { display: grid; gap: 12px; }
.checkout-section { padding: 20px; border: 1px solid var(--line); border-radius: 15px; background: white; }
.checkout-section-title { display: flex; align-items: center; gap: 10px; margin-bottom: 15px; }.checkout-section-title > span { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; color: var(--violet); background: #efedff; font-size: 12px; font-weight: 900; }.checkout-section-title > div { display: grid; gap: 2px; }.checkout-section-title b { font-size: 12px; }.checkout-section-title small { color: var(--muted); font-size: 12px; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.field-grid label, .wide-field { display: grid; gap: 6px; }.field-grid label > span, .wide-field > span { color: #4c4953; font-size: 12px; font-weight: 800; }
.field-grid input, .wide-field input, .wide-field textarea { width: 100%; min-height: 40px; padding: 10px 11px; border: 1px solid #dedce3; border-radius: 8px; outline: 0; background: #fbfbfc; font-size: 12px; transition: .2s ease; }
.wide-field { margin-top: 11px; }.wide-field textarea { min-height: 66px; resize: vertical; font-family: inherit; }
.field-grid input:focus, .wide-field input:focus, .wide-field textarea:focus { border-color: var(--violet); box-shadow: 0 0 0 3px rgba(103,83,243,.1); background: white; }
.delivery-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.delivery-options > label { position: relative; min-width: 0; display: grid; grid-template-columns: 31px 1fr; gap: 8px; align-items: center; padding: 10px; border: 1px solid var(--line); border-radius: 10px; cursor: pointer; }.delivery-options > label.active { border-color: var(--violet); box-shadow: inset 0 0 0 1px var(--violet); background: #faf9ff; }
.delivery-options input, .payment-options input { position: absolute; opacity: 0; pointer-events: none; }.delivery-options i { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 8px; color: white; background: #24212c; font-size: 12px; font-style: normal; font-weight: 900; }.delivery-options label:nth-child(2) i { color: #16151a; background: #ffd938; }.delivery-options label:nth-child(3) i { background: #276bc7; }
.delivery-options label > span { min-width: 0; display: grid; gap: 3px; }.delivery-options b { font-size: 12px; }.delivery-options small { overflow: hidden; color: var(--muted); font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.delivery-options strong { grid-column: 2; color: var(--violet); font-size: 12px; font-weight: 800; }
.payment-options { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }.payment-options label { position: relative; display: grid; grid-template-columns: 30px 1fr; gap: 9px; align-items: center; padding: 10px; border: 1px solid var(--line); border-radius: 10px; cursor: pointer; }.payment-options label.active { border-color: var(--violet); box-shadow: inset 0 0 0 1px var(--violet); background: #faf9ff; }.payment-options label > span { width: 30px; height: 25px; display: grid; place-items: center; border-radius: 6px; color: white; background: var(--violet); font-size: 12px; font-weight: 900; }.payment-options div { display: grid; gap: 3px; }.payment-options b { font-size: 12px; }.payment-options small { color: var(--muted); font-size: 12px; }
.checkout-summary { position: sticky; top: 18px; align-self: start; padding: 20px; border-radius: 15px; background: #201d2b; color: white; box-shadow: 0 16px 36px rgba(23,20,32,.15); }.checkout-summary .eyebrow { color: var(--lime); }.checkout-summary h3 { margin: -3px 0 16px; font-size: 23px; letter-spacing: -.035em; }
.checkout-items { max-height: 230px; overflow: auto; display: grid; gap: 9px; padding-right: 3px; }.checkout-items > div { min-width: 0; display: grid; grid-template-columns: 48px 1fr auto; gap: 8px; align-items: center; padding-bottom: 9px; border-bottom: 1px solid #3b3747; }.checkout-items img { width: 48px; height: 55px; object-fit: cover; border-radius: 6px; }.checkout-items img.cart-contain { object-fit: contain; padding: 4px; background: #eeebe5; }.checkout-items span { min-width: 0; display: grid; gap: 3px; }.checkout-items b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.checkout-items small { display: -webkit-box; overflow: hidden; color: #aaa5b6; font-size: 12px; line-height: 1.35; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }.checkout-items strong { font-size: 12px; white-space: nowrap; }
.checkout-total { display: grid; grid-template-columns: 1fr auto; gap: 7px 12px; margin: 15px 0; }.checkout-total span, .checkout-total b { color: #aaa5b6; font-size: 12px; font-weight: 500; }.checkout-total strong { padding-top: 10px; border-top: 1px solid #464050; font-size: 12px; }
.consent-row { display: flex; align-items: flex-start; gap: 8px; margin: 13px 0; color: #bdb8c6; font-size: 12px; line-height: 1.4; cursor: pointer; }.consent-row input { flex: 0 0 auto; margin-top: 1px; accent-color: var(--lime); }.checkout-summary .checkout-button { color: #211d2b; background: var(--lime); }.checkout-summary .checkout-button:hover { background: #d3f34f; }.checkout-summary .checkout-note { color: #9994a5; }
.back-to-cart { width: 100%; margin-top: 9px; padding: 7px; border: 0; color: #bcb7c6; background: transparent; font-size: 12px; cursor: pointer; }.back-to-cart:hover { color: white; }
.order-success { max-width: 630px; min-height: 520px; display: grid; place-items: center; align-content: center; gap: 12px; margin: auto; padding: 56px 40px; text-align: center; }.success-mark { width: 66px; height: 66px; display: grid; place-items: center; border-radius: 50%; color: #4c38d5; background: var(--lime); font-size: 30px; font-weight: 900; box-shadow: 0 12px 30px rgba(103,83,243,.16); }.order-success h2 { margin: 0; font-size: 39px; letter-spacing: -.05em; }.order-success > p:not(.eyebrow) { max-width: 540px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }.success-facts { width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 10px 0; }.success-facts span { min-width: 0; display: grid; gap: 5px; padding: 13px; border: 1px solid var(--line); border-radius: 10px; background: white; }.success-facts small { color: var(--muted); font-size: 12px; }.success-facts b { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }.order-success > .checkout-button { width: min(320px, 100%); flex: none; }
.mobile-nav { display: none; }

@media (max-width: 1100px) {
  .topbar { grid-template-columns: 180px 1fr auto; padding-inline: 22px; }.header-actions a { display: none; }.icon-action { font-size: 0; }.icon-action > span { font-size: 19px; }.icon-action > b { font-size: 12px; }
  .hero { grid-template-columns: 1fr .9fr; gap: 30px; padding-inline: 34px; }.hero h1 { font-size: 48px; }.hero-gallery { transform: scale(.9); transform-origin: center right; }
  .trust-strip { margin-inline: 25px; }.trust-strip article { padding-inline: 13px; }
  .market, .how-it-works, .seller-showcase { padding-inline: 30px; }.photo-service { margin-inline: 30px; padding-inline: 44px; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  body { padding-bottom: 62px; }
  .announcement { height: 25px; gap: 8px; font-size: 12px; }.announcement span:nth-child(2), .announcement span:nth-child(3), .announcement span:nth-child(4), .announcement span:nth-child(5) { display: none; }
  .topbar { position: relative; min-height: 62px; grid-template-columns: auto 1fr auto; gap: 10px; padding: 9px 14px; }.brand-mark { width: 31px; height: 31px; }.brand strong { font-size: 12px; }.brand small { display: none; }.topbar .search { grid-column: 1 / -1; grid-row: 2; height: 42px; }.header-actions .icon-action:first-of-type { display: none; }.header-actions .icon-action:last-of-type { padding: 5px; }.header-actions .icon-action:last-of-type::after { content: ""; }.header-actions .icon-action:last-of-type span { display: block; }
  .hero { min-height: auto; grid-template-columns: 1fr; gap: 26px; padding: 34px 17px 50px; }.hero::before { right: -50%; top: 40%; width: 140%; height: 60%; }.hero h1 { font-size: 42px; }.hero-copy > p:not(.eyebrow) { margin-top: 16px; font-size: 14px; line-height: 1.5; }.hero-search-row { display: grid; }.hero-search { min-height: 47px; }.hero-search-row .primary-button { min-height: 45px; }.search-examples { display: none; }
  .hero-gallery { min-height: 330px; transform: none; }.hero-art-main { left: 0; width: 72%; height: 272px; }.hero-art-top { right: 0; width: 34%; height: 145px; }.hero-art-bottom { right: 0; bottom: 6px; width: 39%; height: 148px; }.hero-proof { right: 24%; bottom: 0; min-width: 118px; }
  .trust-strip { grid-template-columns: 1fr 1fr; margin: -10px 14px 48px; }.trust-strip article { padding: 13px; }.trust-strip article:nth-child(2) { border-right: 0; }.trust-strip article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.trust-strip small { font-size: 12px; }
  .market, .how-it-works, .seller-showcase { padding: 0 14px 58px; }.section-heading { align-items: start; }.section-heading > p { display: none; }.section-heading h2 { font-size: 31px; }.category-row { margin-inline: -14px; padding-inline: 14px; }
  .mobile-filter-button { width: 100%; display: flex; justify-content: space-between; padding: 11px 13px; border: 1px solid var(--line); border-radius: 10px; background: white; font-size: 12px; font-weight: 800; }.catalog-layout { grid-template-columns: 1fr; gap: 15px; }.filters { display: none; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }.filters.open { display: grid; }.seller-note { display: none; }
  .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 8px; }.product-image-wrap { border-radius: 11px; }.quick-view { display: none; }.product-info h3 { font-size: 12px; }.product-price b { font-size: 13px; }.favorite { right: 7px; top: 7px; width: 30px; height: 30px; }.product-badge { left: 7px; top: 7px; }.rating { font-size: 12px; }
  .product-image img.contain-product { padding: 10px; }
  .seller-grid { grid-template-columns: 1fr; gap: 8px; }.seller-grid > button { padding: 14px; }
  .photo-service { grid-template-columns: 1fr; gap: 26px; margin: 0 14px 58px; padding: 34px 24px; border-radius: 20px; }.photo-service h2 { font-size: 34px; }.service-visual { height: 260px; }.service-visual img { right: 2%; width: 88%; }
  .steps { grid-template-columns: 1fr 1fr; gap: 8px; }.steps article { min-height: 140px; padding: 16px; }
  footer { grid-template-columns: 1fr 1fr; padding: 34px 20px; }.footer-brand { grid-column: 1 / -1; }.footer-legal { grid-column: 1 / -1; }
  .product-modal { width: 100%; max-height: 100dvh; grid-template-columns: 1fr; border-radius: 18px 18px 0 0; }.overlay:not(.cart-overlay):not(.checkout-overlay) { align-items: end; padding: 0; }.crop-column { min-height: 370px; padding: 34px 24px 24px; }.crop-frame.portrait { width: auto; height: min(300px, 42vh); max-width: 62vw; border-width: 7px; }.crop-frame.landscape { width: min(310px, 86vw); height: auto; border-width: 7px; }.source-preview { width: min(260px, 90%); }.frame-product-visual { width: min(270px, 86vw); }.frame-facts { grid-template-columns: 1fr; }.config-column { padding: 28px 20px 24px; }.config-column > h2 { font-size: 25px; }.size-grid { grid-template-columns: repeat(3, 1fr); }.buy-row { position: sticky; bottom: -24px; z-index: 3; margin-inline: -20px; padding: 12px 20px 20px; background: white; }.buy-row b { font-size: 18px; }
  .cart-drawer { padding: 28px 20px; }
  .checkout-overlay { padding: 8px; }.checkout-modal { width: 100%; max-height: calc(100dvh - 16px); border-radius: 16px; }.checkout-head { display: grid; padding: 25px 20px 18px; }.checkout-head h2 { font-size: 31px; }.checkout-steps { overflow-x: auto; }.checkout-layout { grid-template-columns: 1fr; padding: 9px; }.checkout-section { padding: 15px; }.field-grid, .delivery-options, .payment-options { grid-template-columns: 1fr; }.checkout-summary { position: static; }.order-success { min-height: calc(100dvh - 32px); padding: 40px 18px; }.order-success h2 { font-size: 32px; }.success-facts { grid-template-columns: 1fr; }
  .mobile-nav { position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; min-height: 59px; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); background: rgba(255,255,255,.96); backdrop-filter: blur(14px); }.mobile-nav a, .mobile-nav button { position: relative; display: grid; place-items: center; align-content: center; gap: 2px; padding: 5px; border: 0; color: #5c5964; background: transparent; font-size: 12px; }.mobile-nav span { color: var(--violet); font-size: 17px; }.mobile-nav b { position: absolute; left: 56%; top: 6px; }
}

@media (max-width: 380px) {
  .hero h1 { font-size: 36px; }.hero-gallery { min-height: 285px; }.hero-art-main { height: 236px; }.hero-art-top, .hero-art-bottom { height: 125px; }.trust-strip { grid-template-columns: 1fr; }.trust-strip article { border-right: 0; border-bottom: 1px solid var(--line); }.steps { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; }
}

/* Real catalog facets and search landing pages */
.category-row a{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;border:1px solid #e9e6f1;padding:11px 17px;border-radius:100px;color:#403a50;background:white;text-decoration:none;font-size:14px}.category-row a.active{background:#6d4aff;color:white;border-color:#6d4aff}.category-row a small{font-size:11px;opacity:.68}.facet-fields{display:grid;gap:14px}.facet-fields label{display:grid;gap:7px;font-size:13px}.facet-fields select,.facet-fields input,.catalog-toolbar select{width:100%;min-width:0;border:1px solid #e4e0ed;border-radius:9px;background:white;padding:10px;font:inherit;color:#322943}.facet-fields small{font-size:11px;line-height:1.5;color:#80788e}.price-range{display:flex;gap:7px}.reset-facets{color:#6748e8;font-size:13px;text-align:left}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;font-size:14px}.catalog-toolbar>span{font-weight:700}.catalog-toolbar label{display:flex;align-items:center;gap:10px;color:#766b87}.catalog-toolbar select{width:auto}.product-info{text-decoration:none;color:inherit;display:block}.seo-header{max-width:1400px;margin:auto;padding:25px 5%;display:flex;justify-content:space-between;align-items:center;gap:25px}.seo-header nav{display:flex;gap:20px;flex-wrap:wrap}.seo-page{max-width:1360px;margin:32px auto 60px;padding:0 32px}.seo-page h1{font-size:clamp(30px,4vw,54px);line-height:1.13;margin:24px 0}.seo-page>p{max-width:900px;line-height:1.75;color:#62596f}.breadcrumbs{font-size:13px;color:#80768a;margin-bottom:20px}.seo-product{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin:32px 0}.seo-product img{max-width:100%;height:auto;max-height:650px}.seo-product p{line-height:1.75}.local-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:32px 0}.local-facts article{background:#f5f2fd;border:1px solid #eee7fc;padding:25px;border-radius:18px}.local-facts h2{font-size:19px;margin:0 0 12px}.local-facts p{font-size:14px;color:#756a82;line-height:1.7}.local-banner{display:flex;align-items:center;justify-content:space-between;gap:35px;margin:40px auto;max-width:1280px;padding:35px;background:#f6f3ff;border-radius:24px}.local-banner h2{font-size:26px;margin:10px 0}.local-banner p{font-size:14px;color:#716681}.local-banner>div:last-child{display:grid;gap:18px;white-space:nowrap}.local-banner a,.back-catalog,.permalink{color:#6748e8}.back-catalog{display:inline-block;margin:15px}.permalink{font-size:13px;display:block;margin:8px 0}.seo-search{display:flex;align-items:end;gap:12px;margin:20px 0}.seo-search label{display:grid;gap:6px;flex:1}.seo-search input{border:1px solid #ddd;padding:12px;border-radius:8px;width:100%}.seo-search button{padding:12px 20px;background:#6d4aff;color:white;border-radius:8px}.feed-links{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0}.office-tabs{flex-wrap:wrap}.office-form ol{line-height:1.8;padding-left:22px}.office-form li{margin-bottom:12px}
@media(max-width:760px){.local-facts,.seo-product{grid-template-columns:1fr}.local-banner{margin:20px 16px;padding:24px;flex-direction:column;align-items:start}.seo-page{padding:0 20px;margin-top:24px}.seo-header{flex-wrap:wrap}.catalog-toolbar{font-size:12px}.catalog-toolbar select{max-width:150px}.local-banner h2{font-size:23px}.product-intro .primary-button{font-size:13px}.category-row a{padding:9px 13px;font-size:13px}}

/* Extend the existing violet / lime market with readable working surfaces. */
body{font-size:16px}button,a,input,select,textarea{touch-action:manipulation}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #9587ff;outline-offset:3px}input,select,textarea{font:inherit}input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:var(--violet)}
.market-mode{padding:10px 4%;background:#242032;color:#fff;display:flex;justify-content:space-between;gap:12px;font-size:14px}.market-mode a{color:var(--lime);white-space:nowrap}.global-error{margin:16px 4%;color:#8d2929}.topbar{grid-template-columns:180px 1fr auto}.header-actions{gap:15px}.header-actions a,.icon-action{font-size:14px}.hero-proof strong{font-size:22px}.hero-proof span{font-size:14px}.hero-proof small{font-size:12px}.product-info h3{font-size:17px;line-height:1.4}.product-price b{font-size:22px}.seller,.rating{font-size:13px}.filter-block b,.radio-row,.filter-chips button{font-size:14px}.trust-strip b{font-size:15px}.trust-strip small{font-size:13px}.product-modal{width:min(1200px,96vw)}.config-column{padding:30px}.config-column p{line-height:1.6}.config-label b,.size-grid b,.material-card b{font-size:15px}.config-label span{font-size:12px}.material-card{min-height:72px}.material-card small{font-size:13px}.material-card strong{font-size:14px}.buy-row button{font-size:16px}.size-grid button{min-height:60px}.source-preview>img{object-fit:contain}.source-preview{max-height:220px;width:auto;max-width:95%}.source-preview img{display:block}.crop-frame{box-sizing:content-box;flex-shrink:0}.crop-frame img{position:absolute;inset:0;width:100%;height:100%;max-width:none}.crop-frame.portrait{height:350px;max-width:80%;width:auto}.crop-frame.landscape{width:min(410px,90%);height:auto}.crop-column{justify-content:center}.position-control{flex-wrap:wrap}.position-control button,.position-control span{font-size:14px}.checkout-head p,.checkout-fields label span,.checkout-note{font-size:14px!important}.field-grid input,.wide-field input,.wide-field textarea{font-size:16px}.checkout-section-title b{font-size:17px}.delivery-options{grid-template-columns:1fr}.delivery-options b,.payment-options b{font-size:14px}.delivery-options small,.payment-options small{font-size:12px}.checkout-summary h3{font-size:26px}.checkout-items b{font-size:13px}.checkout-items small{font-size:12px}.checkout-items strong{font-size:13px}.consent-row{font-size:13px;line-height:1.6}.consent-row a{text-decoration:underline;color:white}.checkout-total span,.checkout-total b{font-size:14px}.checkout-total strong{font-size:18px}.cart-item b{font-size:15px}.cart-item small{font-size:13px}.cart-item strong{font-size:16px}.cart-summary span,.cart-summary b{font-size:15px}.cart-drawer{width:min(510px,96vw);overflow:auto}.quantity{display:flex!important;align-items:center;gap:12px!important}.quantity button{width:30px;height:30px;border:1px solid var(--line);border-radius:6px;background:white;font-size:20px}.quantity span{font-size:16px}.catalog-pagination{display:flex;justify-content:center;align-items:center;gap:24px;padding:30px}.catalog-pagination button{padding:12px 18px;border:1px solid var(--line);border-radius:10px;background:white}.personal-upload{margin:18px 0}.personal-upload input[type=file]{width:100%;font-size:14px}.personal-upload .upload-box{display:grid}.personal-upload small{font-size:13px}.check-label{display:flex!important;align-items:flex-start;gap:10px;line-height:1.6}.check-label a{text-decoration:underline}.check-label input{margin-top:4px}.notice,.error-message,.success-message{padding:14px 18px;border-radius:12px;font-size:14px;line-height:1.65;margin:14px 0}.notice{background:#f1eeff;color:#483d71;border:1px solid #dfd8ff}.error-message{background:#fff0ee;color:#923529;border:1px solid #f5c8bf}.success-message{background:#eaf6ed;color:#286638}.muted{color:var(--muted);font-size:14px;line-height:1.7}.span-all{grid-column:1/-1}.legal-overlay,.office-overlay{z-index:200;padding:24px!important;align-items:center!important}.legal-document{position:relative;z-index:1;background:white;border-radius:20px;width:min(930px,96vw);max-height:94dvh;overflow:auto;padding:48px 56px;box-shadow:var(--shadow)}.legal-document h1{font-size:34px;letter-spacing:-.035em;line-height:1.15;margin:10px 0 24px}.legal-document h2{font-size:21px;margin:30px 0 10px}.legal-document p{font-size:16px;line-height:1.8}.legal-document section{margin-bottom:24px}.document-links{display:flex;flex-wrap:wrap;gap:12px 22px;padding-top:25px;border-top:1px solid var(--line)}.document-links a,.legal-basis a{color:var(--violet);text-decoration:underline}.legal-basis{font-size:13px!important;color:var(--muted)}.office-shell{position:relative;z-index:1;background:#f5f5fa;border-radius:20px;width:min(1440px,97vw);height:94dvh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow)}.office-header{height:76px;min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:20px 76px 20px 28px;border-bottom:1px solid var(--line);background:white}.office-logo{font-size:22px;letter-spacing:-.05em}.office-logo b{color:var(--violet)}.office-logo small{font-size:13px;letter-spacing:0;border-left:1px solid var(--line);margin-left:18px;padding-left:18px}.office-header>span{color:var(--muted);font-size:14px}.office-layout{display:grid;grid-template-columns:230px 1fr;min-height:0;flex:1}.office-sidebar{padding:28px 16px;display:flex;flex-direction:column;gap:8px;border-right:1px solid var(--line);background:white;overflow:auto}.office-sidebar button{background:transparent;padding:14px;text-align:left;border:0;border-radius:10px;font-size:15px;cursor:pointer}.office-sidebar button.active{color:var(--violet);background:#eeebff;font-weight:700}.office-sidebar>a{font-size:13px;color:var(--muted);padding:16px}.office-sidebar label{font-size:13px;display:grid;gap:8px;margin-bottom:20px}.office-sidebar select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;font-size:14px}.office-main{min-width:0;overflow:auto;padding:34px}.office-main h1{font-size:34px;letter-spacing:-.04em;margin:0 0 24px}.office-title{display:flex;justify-content:space-between;gap:20px;align-items:center}.office-title>button{border:1px solid var(--line);background:white;border-radius:10px;padding:10px 16px;cursor:pointer}.office-title h1{margin-bottom:20px}.office-metrics{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:16px;margin:0 0 24px}.office-metrics>div{padding:20px;background:white;border:1px solid var(--line);border-radius:16px;display:grid;gap:8px}.office-metrics small{font-size:13px;color:var(--muted)}.office-metrics b{font-size:30px;letter-spacing:-.04em}.office-order{border:1px solid var(--line);border-radius:16px;background:white;padding:24px;margin-bottom:20px}.office-order-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:20px;align-items:center}.office-order-head h3{font-size:20px;margin:8px 0 0}.office-order-head small{font-size:13px;color:var(--muted)}.state-chip{font-size:13px;background:#f0ecff;border-radius:7px;color:#5545a3;padding:7px 12px;display:inline-block}.office-order-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;padding:24px 0}.office-order-grid p{font-size:14px;line-height:1.65;margin:8px 0}.office-item{display:grid;grid-template-columns:80px 1fr;gap:18px;border-top:1px solid var(--line);padding:20px 0}.office-item img{width:80px;height:100px;object-fit:cover;border-radius:8px}.office-item p{font-size:14px;line-height:1.6;margin:6px 0}.office-item small{font-size:13px;color:var(--muted)}.office-item a{display:block;font-size:14px;color:var(--violet);margin-top:10px}.item-controls{display:grid;grid-template-columns:1.1fr 1fr 1.3fr auto;gap:8px;margin-top:15px}.item-controls input,.item-controls select{min-width:0;padding:10px;border:1px solid #d7d4df;border-radius:8px;font-size:14px;background:white}.office-button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:12px 18px;border:0;border-radius:10px;background:var(--violet);color:white;font-weight:700;font-size:14px;cursor:pointer;text-align:center}.office-button.secondary{background:#eeebff;color:var(--violet)}.delivery-quote{display:grid;grid-template-columns:130px 1fr auto;gap:12px;border-top:1px solid var(--line);padding-top:20px;align-items:end}.delivery-quote label{display:grid;gap:8px;font-size:13px}.delivery-quote input{min-width:0;width:100%;padding:12px;border:1px solid #d7d4df;border-radius:8px;font-size:14px}.office-form{background:white;border:1px solid var(--line);padding:26px;border-radius:16px;margin-bottom:24px;display:grid;gap:20px}.office-form h2{font-size:22px;margin:0}.office-form p{font-size:15px;line-height:1.7;margin:0}.office-form a{color:var(--violet);font-size:14px}.office-form code{font-size:13px;overflow-wrap:anywhere}.office-form>button{justify-self:start}.office-form label,.login-panel label{display:grid;gap:9px;font-size:14px;color:#403a4c;line-height:1.5}.office-form input:not([type=checkbox]),.office-form select,.office-form textarea,.login-panel input{width:100%;min-width:0;padding:12px 14px;border:1px solid #d7d4df;border-radius:9px;background:white;font-size:16px}.office-form textarea{height:95px;resize:vertical}.office-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.office-form section{display:grid;gap:20px;padding-top:24px;border-top:1px solid var(--line)}.office-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.office-tabs button{border:1px solid var(--line);border-radius:9px;background:white;padding:12px 18px;cursor:pointer;font-size:14px}.office-tabs button.active{background:var(--violet);color:white;border-color:var(--violet)}.office-product-list{display:grid;gap:10px}.office-product-list article{display:flex;gap:16px;align-items:center;background:white;border:1px solid var(--line);border-radius:12px;padding:12px}.office-product-list img{width:70px;height:70px;object-fit:cover;border-radius:7px}.office-product-list div{flex:1;min-width:0;display:grid;gap:8px}.office-product-list b{font-size:15px}.office-product-list small{font-size:13px;color:var(--muted)}.office-product-list button{border:1px solid var(--line);padding:10px;border-radius:8px;background:white;cursor:pointer;font-size:13px}.provider-links{display:flex;gap:24px;flex-wrap:wrap}.login-panel{margin:auto;width:min(500px,94%);padding:40px;overflow:auto}.login-panel h1{font-size:36px;letter-spacing:-.04em;line-height:1.2}.login-panel p{font-size:16px;color:var(--muted);line-height:1.7}.login-panel form{display:grid;gap:20px}.login-panel .eyebrow{font-size:12px;color:var(--violet)}.customer-order-item{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.customer-order-item img{width:110px;height:140px;border-radius:8px}.customer-order-item h3{font-size:18px;margin:0}.customer-order-item p{font-size:14px;margin:8px 0}.order-totals{display:grid;grid-template-columns:1fr auto;gap:16px;margin:28px 0}.order-totals strong{font-size:22px}.order-actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.order-actions button{border:1px solid var(--line);padding:12px 16px;border-radius:8px;background:white;cursor:pointer;font-size:14px}.customer-order>.office-button{margin:8px 0;width:100%}.hero-copy>p:not(.eyebrow){font-size:17px}.hero{padding-top:52px;padding-bottom:52px}.photo-service p,.steps p{font-size:15px;line-height:1.7}.steps b{font-size:17px}footer b{font-size:16px}footer a,footer p{font-size:14px;line-height:1.7}.footer-legal{font-size:13px}.mobile-nav a,.mobile-nav button{font-size:12px}
.delivery-calculate{width:100%;min-height:48px;border:0;border-radius:12px;background:#211b47;color:#fff;font-size:15px;font-weight:800;cursor:pointer}.delivery-calculate:disabled{opacity:.65;cursor:wait}.cdek-options{display:grid;gap:10px;padding:14px;border:1px solid #ded9ff;border-radius:14px;background:#f8f7ff}.cdek-options>label{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px;border:1px solid #dedbe8;border-radius:11px;background:#fff;cursor:pointer}.cdek-options>label.active{border-color:var(--violet);box-shadow:0 0 0 2px rgba(103,83,243,.12)}.cdek-options span{display:grid;gap:4px}.cdek-options b{font-size:15px}.cdek-options small{color:var(--muted);font-size:12px;line-height:1.45}.cdek-options strong{font-size:16px;white-space:nowrap}.cdek-options>small{padding:0 4px}
@media(max-width:1000px){.header-actions a{display:block}.header-actions{gap:12px}.office-layout{grid-template-columns:180px 1fr}.office-main{padding:22px}.item-controls{grid-template-columns:1fr 1fr}.delivery-quote{grid-template-columns:1fr 2fr}.delivery-quote button{grid-column:1/-1}.office-metrics b{font-size:24px}.product-modal{grid-template-columns:1fr 1fr}.config-column{padding:24px}}
@media(max-width:760px){.market-mode{font-size:12px;padding:9px 14px}.market-mode>a{font-size:12px}.topbar{grid-template-columns:auto 1fr auto}.header-actions{gap:10px}.header-actions a{font-size:13px}.header-actions .icon-action{font-size:0}.hero{padding-top:32px}.hero h1{font-size:38px}.hero-proof strong{font-size:18px}.product-info h3{font-size:14px}.product-price b{font-size:19px}.product-image-wrap{aspect-ratio:4/5}.product-badge{font-size:11px;max-width:65%}.seller{font-size:12px}.filter-block b,.radio-row,.mobile-filter-button{font-size:14px}.trust-strip b{font-size:14px}.trust-strip small{font-size:12px}.product-modal{grid-template-columns:1fr}.crop-column{min-height:360px}.crop-frame.portrait{height:270px;width:auto;max-width:80%}.source-preview{height:100px;width:auto;max-width:85%}.source-preview>small{display:none}.config-column{padding:24px 18px}.material-card strong{font-size:13px}.cart-item{grid-template-columns:70px 1fr 20px}.cart-item img{width:70px;height:90px}.checkout-overlay{padding:0}.checkout-modal{max-height:100dvh}.office-overlay,.legal-overlay{padding:0!important}.office-shell{width:100%;height:100dvh;border-radius:0}.office-header{padding-left:18px;height:64px;min-height:64px}.office-logo{font-size:20px}.office-header>span{font-size:12px}.office-layout{display:flex;flex-direction:column}.office-sidebar{padding:10px 14px;border:0;border-bottom:1px solid var(--line);flex-direction:row;flex-shrink:0;overflow-x:auto;align-items:center;gap:6px}.office-sidebar button{font-size:13px;white-space:nowrap;padding:10px 12px}.office-sidebar>a{display:none}.office-sidebar label{display:none}.office-main{padding:20px 14px}.office-main h1{font-size:28px}.office-metrics{gap:8px;grid-template-columns:1fr 1fr}.office-metrics>div{padding:15px}.office-metrics>div:last-child{grid-column:1/-1}.office-order{padding:16px}.office-order-head{flex-wrap:wrap;gap:12px}.office-order-grid{grid-template-columns:1fr;gap:10px}.office-item{grid-template-columns:54px 1fr;gap:12px}.office-item img{width:54px;height:70px}.item-controls{grid-template-columns:1fr}.delivery-quote{grid-template-columns:1fr}.office-form{padding:20px 16px}.office-fields{grid-template-columns:1fr}.office-tabs{gap:6px}.office-tabs button{font-size:13px;padding:10px 12px}.office-product-list article{gap:10px}.office-product-list img{width:50px;height:60px}.office-product-list b{font-size:14px}.office-product-list small{font-size:12px}.legal-document{max-height:100dvh;width:100%;border-radius:0;padding:36px 22px}.legal-document h1{font-size:29px}.legal-document h2{font-size:20px}.customer-order-item{grid-template-columns:74px 1fr;gap:16px}.customer-order-item img{width:74px;height:95px}.login-panel{padding:28px 20px}.announcement{font-size:12px}.quantity button{width:32px;height:32px}.source-preview{max-height:110px}}

.source-preview{height:auto!important;max-height:none!important;flex-shrink:0}.source-preview>img{position:absolute;inset:0;width:100%;height:100%}
.source-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.source-options label{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px solid #dadbe5;border-radius:16px;cursor:pointer}.source-options label.selected{border-color:#6c4eff;background:#f4f1ff}.source-options small,.folder-location small,.yandex-shipment small{display:block;margin-top:5px;color:#656575;font-size:14px}.source-options input{width:auto!important;margin-top:4px}.folder-location{padding:22px;border-radius:18px;background:#211b41;color:white;display:grid;gap:8px;overflow-wrap:anywhere}.folder-location small{color:#cdc6ea}.folder-location strong{font-size:26px}.folder-location span{font-size:14px}.source-folder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.source-folder-grid>div{display:grid;gap:5px;padding:15px;background:#f5f5fa;border-radius:12px}.source-folder-grid b{font-size:14px}.source-folder-grid small{font-size:13px;color:#696775}.source-settings summary{cursor:pointer;font-weight:700;font-size:16px}.source-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.yandex-shipment{padding:20px;border-radius:16px;background:#fff8d9;margin:18px 0;line-height:1.5}.yandex-shipment b{color:#26211a}.service-main-image{width:100%;height:480px;display:grid;place-items:center;background:#fff;border-radius:16px;overflow:hidden}.service-main-image img{width:100%;height:100%;object-fit:contain}.gallery-thumbnails{display:flex;gap:8px;max-width:100%;overflow-x:auto;padding:10px 2px}.gallery-thumbnails button{flex:0 0 64px;height:82px;border:2px solid transparent;border-radius:8px;overflow:hidden;background:#fff}.gallery-thumbnails button.active{border-color:#6c4eff}.gallery-thumbnails img{width:100%;height:100%;object-fit:contain}.service-gallery>p{font-size:14px;line-height:1.6;color:#676577}.delivery-type{border:0;padding:0;margin:18px 0;display:flex;gap:18px;flex-wrap:wrap}.delivery-type legend{font-size:15px;font-weight:700;margin-bottom:12px}.delivery-type label{display:flex;gap:8px;align-items:center;font-size:15px}.delivery-type input{width:18px!important;height:18px!important}.delivery-hint{padding:14px;background:#fff8d9;border-radius:12px;font-size:14px;line-height:1.5}.global-error button{margin-left:10px;text-decoration:underline}.category-row>button{text-transform:uppercase;font-size:13px;letter-spacing:.025em}.office-form .source-actions button{width:auto}@media(max-width:760px){.source-options{grid-template-columns:1fr}.source-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.folder-location strong{font-size:22px}.service-main-image{height:380px}.source-options label{padding:14px}}
.delivery-settings,.embedded-form{display:grid;gap:20px}.delivery-settings>.office-form{margin-bottom:0}.embedded-form{padding-top:18px;border-top:1px solid var(--line)}

/* Marketplace density: useful products in the first screen. */
:root{--market-max:1680px}.topbar,.hero,.trust-strip,.market,.seller-showcase,.photo-service,.how-it-works{max-width:var(--market-max);margin-left:auto;margin-right:auto}.topbar{padding:20px 32px;gap:24px}.brand small{font-size:12px}.hero{padding:28px 32px;grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr);gap:30px;min-height:0}.hero h1{font-size:clamp(30px,3vw,46px);max-width:720px;line-height:1.08;margin:8px 0 14px}.hero-copy>p:not(.eyebrow){font-size:16px;max-width:680px;margin:12px 0}.hero-gallery{height:230px;min-height:0}.hero-search-row{display:none}.hero-art-main{width:64%;height:92%;left:0;top:0}.hero-art-top{width:32%;height:49%;right:0;top:0}.hero-art-bottom{width:32%;height:43%;right:0;bottom:0}.hero-proof{display:none}.search-examples{margin-top:14px;font-size:13px}.hero-art-main span{font-size:13px}.trust-strip{padding:18px 32px}.market{padding:28px 32px 35px}.market .section-heading{margin-bottom:18px}.market .section-heading h2{font-size:27px}.catalog-layout{grid-template-columns:205px minmax(0,1fr);gap:24px}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px}.product-card{min-width:0;border-radius:14px;box-shadow:none}.product-image-wrap{aspect-ratio:4/5;border-radius:13px;overflow:hidden;background:#f3f3f6}.product-image{width:100%;height:100%;display:block}.product-image img{object-fit:contain;transform:none;width:100%;height:100%}.product-image:hover img{transform:none}.product-info{padding:12px 2px;text-align:left}.product-info h3{font-size:15px;line-height:1.4;margin:7px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}.product-price b{font-size:23px}.product-price{display:block;margin-top:9px}.product-card .rating{font-size:12px}.favorite{width:34px;height:34px}.quick-view{font-size:13px;bottom:10px;left:10px;right:10px}.product-badge{font-size:12px}.catalog-toolbar{margin:0 0 15px}.category-row{gap:8px;margin-bottom:22px}.filter-block{padding-bottom:20px;margin-bottom:20px}.seller-showcase,.photo-service,.how-it-works{padding-left:32px;padding-right:32px}.announcement{padding:8px 32px}.market-mode{font-size:12px;padding:7px 32px}.market-mode>a{font-size:12px}.product-info .seller{font-size:12px}.category-row a{text-transform:uppercase;font-size:12px;letter-spacing:.025em}
@media(min-width:1500px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1850px){:root{--market-max:1840px}.product-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:1100px){.catalog-layout{grid-template-columns:180px minmax(0,1fr);gap:18px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar{gap:15px}.hero-gallery{height:210px}.hero{grid-template-columns:1.2fr 1fr}.header-actions .icon-action{font-size:0}.hero h1{font-size:34px}.search-examples{flex-wrap:wrap}}
@media(max-width:760px){.announcement{padding:8px 16px}.market-mode{padding:7px 16px}.topbar{padding:14px 16px;gap:12px}.hero{padding:20px 16px;display:block}.hero h1{font-size:30px;max-width:370px}.hero-copy>p:not(.eyebrow){font-size:14px}.hero-gallery{display:none}.hero .search-examples{display:none}.trust-strip{padding:14px 16px;gap:10px}.trust-strip article:nth-child(n+3){display:none}.trust-strip b{font-size:13px}.trust-strip small{font-size:12px}.market{padding:20px 12px}.market .section-heading h2{font-size:22px}.market .section-heading{align-items:start;gap:10px}.market .section-heading>p{font-size:12px;white-space:nowrap}.catalog-layout{display:block}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px}.product-image-wrap{aspect-ratio:3/4}.product-info{padding:10px 0}.product-info h3{font-size:14px;min-height:40px}.product-price b{font-size:21px}.product-badge{max-width:75%;font-size:11px;padding:5px 7px}.quick-view{opacity:1;transform:none;font-size:12px;padding:9px 3px;left:7px;right:7px;bottom:7px}.favorite{width:31px;height:31px;right:6px;top:6px}.category-row{margin-left:-12px;margin-right:-12px;padding:0 12px 5px;overflow-x:auto;flex-wrap:nowrap}.category-row a{font-size:12px;padding:10px 13px}.seller-showcase,.photo-service,.how-it-works{padding-left:16px;padding-right:16px}.catalog-toolbar{margin-top:15px}.catalog-pagination{padding:24px 4px;gap:14px}.catalog-pagination button{padding:11px 14px}.filters.open{background:#f8f7fc;padding:20px;border-radius:16px;margin-bottom:20px}}

.geo-bar{display:flex;align-items:center;gap:24px;padding:10px 32px;background:#f3f2f7;font-size:13px;color:#6b6478}.geo-bar>button{font-weight:700;color:#2e273c;white-space:nowrap}.geo-bar>button span{color:#7b718f;margin-left:6px}.geo-bar>span{flex:1}.geo-bar>a{color:#6c4eff}.city-overlay{z-index:260;padding:24px;align-items:center}.city-dialog{position:relative;z-index:1;background:white;border-radius:22px;padding:34px;width:min(740px,95vw);max-height:90dvh;overflow:auto}.city-dialog h2{font-size:32px;margin:6px 0 12px}.city-dialog>p:not(.eyebrow){font-size:15px;color:#766b85;line-height:1.6}.city-search{display:grid;gap:9px;font-size:14px}.city-search input{font-size:16px;border:1px solid #dad5e4;padding:13px;border-radius:10px;width:100%}.locate-button{font-size:14px;margin:16px 0;color:#6744e8}.city-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.city-list button{display:grid;text-align:left;gap:5px;padding:13px;border-radius:9px;min-width:0}.city-list button:hover,.city-list button.selected{background:#efebff}.city-list b{font-size:14px}.city-list small{font-size:12px;color:#80758e}.city-suggestion{display:flex;align-items:center;gap:15px;padding:15px;background:#f0ecff;border-radius:12px;margin-bottom:14px;font-size:14px}.city-suggestion button,.custom-city{color:#6848e8}.custom-city{padding:20px 0;font-size:15px}.geo-note{display:block;margin-top:22px;font-size:12px;color:#877c92;line-height:1.6}.geo-note a{display:block}.city-description{white-space:pre-line}.cookie-panel{position:fixed;bottom:22px;left:22px;z-index:320;width:min(640px,calc(100vw - 44px));background:#fff;border:1px solid #e7e2ef;border-radius:18px;padding:20px;box-shadow:0 12px 50px #20153729}.cookie-panel b{font-size:16px}.cookie-panel p{font-size:14px;line-height:1.6;color:#766a84;margin:8px 0 16px}.cookie-panel a{color:#6748e8}.cookie-actions{display:flex;gap:12px;flex-wrap:wrap}.cookie-actions button{font-size:14px;border:1px solid #ded8e9;border-radius:10px;padding:12px 16px}.cookie-actions .primary-button{background:#6c4eff;color:white;border-color:#6c4eff}.cookie-settings{text-align:left;font-size:14px;color:#c5bdcf;margin:8px 0}.product-reviews{border-top:1px solid #e9e5f0;margin-top:24px;padding-top:20px}.review-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-heading h3{font-size:19px;margin:0}.review-heading>b{color:#ef9e1b;font-size:18px}.product-reviews>small{font-size:12px;line-height:1.5;color:#8a8094;display:block}.review{padding:18px 0;border-bottom:1px solid #eeeaf4}.review header{display:flex;justify-content:space-between;gap:10px;font-size:14px}.review header span{color:#eeb032}.review small{font-size:12px;color:#84788d}.review p{font-size:14px;white-space:pre-line;overflow-wrap:anywhere}.seller-reply{padding:14px;background:#f6f3fb;border-radius:10px}.seller-reply>b{font-size:13px}.review-paging{display:flex;justify-content:space-between;padding:15px 0;font-size:13px}.review-form,.review-sent{border:1px solid #e0d8f1;border-radius:14px;background:#f8f5ff;padding:20px;margin:20px 0}.review-form h3{font-size:20px}.review-form label{display:grid;gap:7px;font-size:14px;margin:14px 0}.review-form input:not([type=checkbox]),.review-form textarea{width:100%;padding:12px;border:1px solid #ded7e9;border-radius:8px;font:inherit;background:white}.review-form textarea{min-height:100px}.star-picker{display:flex;gap:7px}.star-picker button{font-size:32px;color:#c5becf}.star-picker button.active{color:#e6a32c}.review-form .check-label{font-size:13px}.marketing-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.marketing-metrics article{padding:20px;background:white;border:1px solid #e8e3f0;border-radius:14px;display:grid;gap:12px}.marketing-metrics small{font-size:13px;color:#7f748b}.marketing-metrics b{font-size:30px}.campaign-link{display:grid;gap:10px;margin-top:20px}.campaign-link textarea{min-height:90px}.review-sent small{font-size:12px}.product-modal .config-column{max-height:92dvh;overflow:auto}
@media(max-width:760px){.geo-bar{padding:9px 16px;gap:12px;font-size:12px}.geo-bar>span{display:none}.geo-bar>a{margin-left:auto}.city-overlay{padding:0}.city-dialog{width:100%;max-height:100dvh;height:100dvh;border-radius:0;padding:30px 20px}.city-list{grid-template-columns:repeat(2,minmax(0,1fr))}.city-dialog h2{font-size:28px}.cookie-panel{bottom:74px;left:12px;width:calc(100vw - 24px);padding:16px}.cookie-panel p{font-size:13px}.cookie-actions{gap:8px}.cookie-actions button{font-size:12px;padding:10px 12px;flex:1}.marketing-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.marketing-metrics article{padding:16px}.review-form{padding:16px}.product-modal .config-column{max-height:none;overflow:visible}.review-heading h3{font-size:17px}.city-suggestion{flex-wrap:wrap}}

/* v6: denser marketplace cards with a full-bleed preview. */
.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-image-wrap{aspect-ratio:1/1;background:#efeff3}
.product-image img{object-fit:cover;transform:none}
.product-image:hover img{transform:scale(1.025)}
.frame-card .product-image img,.service-card .product-image img{object-fit:contain;transform:none}
.seller-login-link{margin-top:18px!important;font-size:12px!important;color:#777181!important}
.price-table{display:grid;gap:8px}
.price-table-head,.price-table-row{display:grid;grid-template-columns:minmax(90px,.7fr) repeat(3,minmax(120px,1fr));gap:10px;align-items:center}
.price-table-head{padding:0 12px;color:#746d7d;font-size:13px}
.price-table-row{padding:12px;border:1px solid var(--line);border-radius:12px;background:#faf9fc}
.price-table-row>strong{font-size:16px}
.price-table-row label span{display:none}
.price-table-row input{padding:10px!important;font-size:15px!important}
@media(min-width:1500px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(min-width:1850px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1100px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-image-wrap{aspect-ratio:4/5}.price-table-head{display:none}.price-table-row{grid-template-columns:1fr 1fr}.price-table-row>strong{grid-column:1/-1}.price-table-row label span{display:block;font-size:12px;color:var(--muted)}.price-table-row label:last-child{grid-column:1/-1}}

/* CDEK setup should read like a short sequence, not a technical form. */
.delivery-settings::before{content:"1  Сохранить и проверить ключи   →   2  Указать города и упаковку   →   3  Получить тарифы";display:block;padding:18px 22px;border-radius:16px;background:#211b41;color:#fff;font-weight:750;font-size:15px;line-height:1.6;letter-spacing:.01em}
@media(max-width:760px){.delivery-settings::before{content:"1. Проверить ключи  →  2. Города и упаковка  →  3. Тарифы";padding:15px 16px;font-size:14px}}
