:root {
  --green: #019266;
  --green-deep: #007454;
  --red: #c53030;
  --gold: #cba034;
  --ink: #15231f;
  --muted: #61706b;
  --line: #dce6e1;
  --cloud: #f1f6f4;
  --paper: #fbfcfb;
  --white: #fff;
  --shadow: 0 16px 38px rgba(21, 35, 31, .10);
  --radius: 20px;
  --wrapper: min(1360px, calc(100vw - 64px));
  font-family: Manrope, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--paper);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); }
button, input, textarea, select { font: inherit; }
button { border: 0; cursor: pointer; color: inherit; }
button:disabled { cursor: not-allowed; opacity: .5; }
input, textarea, select { outline: none; }
input:focus, textarea:focus, select:focus { border-color: var(--green) !important; box-shadow: 0 0 0 3px rgba(1,146,102,.13); }
h1, h2, h3, h4, p { margin-top: 0; }
h1 { font-size: clamp(2.35rem, 4.8vw, 5rem); line-height: 1.03; letter-spacing: -.06em; }
h2 { font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.08; letter-spacing: -.05em; }
h3 { font-size: 1.08rem; line-height: 1.25; letter-spacing: -.025em; }
p { line-height: 1.62; }

.wrapper { width: var(--wrapper); margin-inline: auto; }
.section-block { padding-block: 82px; }
.section-label { display: inline-flex; align-items: center; gap: 8px; color: var(--red); font-size: .74rem; font-weight: 800; letter-spacing: .10em; text-transform: uppercase; }
.breadcrumbs { display: block; margin-bottom: 22px; color: var(--muted); font-size: .79rem; }
.eyebrow { color: var(--muted); font-size: .8rem; line-height: 1.25; }
.icon { display: inline-flex; align-items: center; justify-content: center; width: 1.25em; font-size: 1.15em; font-weight: 700; line-height: 1; }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 21px; border-radius: 12px; font-weight: 800; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover { transform: translateY(-2px); box-shadow: 0 9px 20px rgba(21,35,31,.14); }
.button-primary { background: var(--green); color: white; }
.button-gold { background: var(--gold); color: #fff; }
.button-secondary { background: var(--cloud); color: var(--ink); }
.button-outline { border: 1px solid rgba(255,255,255,.75); background: transparent; color: #fff; }
.button-small { min-height: 39px; width: 100%; padding: 0 12px; border-radius: 10px; font-size: .79rem; }
.button.wide { width: 100%; }
.text-button { display: inline-flex; align-items: center; gap: 7px; background: transparent; color: var(--green); font-weight: 800; text-align: left; }
.text-button:hover { color: var(--red); }

.site-header { position: sticky; z-index: 20; top: 0; border-bottom: 1px solid rgba(220,230,225,.9); background: rgba(255,255,255,.94); backdrop-filter: blur(14px); }
.header-strip { display: flex; justify-content: space-between; align-items: center; min-height: 30px; padding: 0 max(32px, calc((100vw - 1360px) / 2)); background: #eaf1ef; color: #48615a; font-size: .67rem; font-weight: 700; }
.header-strip span { display: flex; align-items: center; gap: 6px; }
.header-strip .header-action { min-height: 22px; padding: 2px 5px; border-radius: 5px; color: inherit; font-size: .65rem; }
.header-strip .header-action[aria-pressed="true"] { background: var(--green); color: #fff; }
.header-main { display: grid; grid-template-columns: 172px auto minmax(190px, 1fr) auto auto; align-items: center; gap: 18px; min-height: 84px; width: var(--wrapper); margin: auto; }
.brand { display: flex; width: 156px; height: 63px; padding: 0; background: transparent; }
.brand img { width: 100%; height: 100%; object-fit: contain; }
.main-nav { display: flex; gap: 6px; }
.main-nav button { padding: 8px 10px; background: transparent; color: #33453f; font-size: .78rem; font-weight: 800; white-space: nowrap; }
.main-nav button:hover { color: var(--green); }
.top-search { display: flex; align-items: center; gap: 8px; height: 43px; padding: 0 13px; border-radius: 12px; background: var(--cloud); color: var(--muted); }
.top-search input { width: 100%; border: 0; background: transparent; color: var(--ink); font-size: .79rem; }
.header-action { display: inline-flex; align-items: center; gap: 5px; padding: 8px 4px; background: transparent; font-size: .75rem; font-weight: 800; white-space: nowrap; }
.header-action:hover { color: var(--green); }
.request-action { position: relative; }
.request-action b { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: var(--red); color: white; font-size: .62rem; }
.mobile-menu { display: none; padding: 7px; background: transparent; font-size: 1.5rem; }

.hero { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(420px, .94fr); overflow: hidden; min-height: 602px; background: #e6f0ed; }
.hero-copy { display: flex; flex-direction: column; justify-content: center; max-width: 690px; padding: 86px max(32px, calc((100vw - 1360px) / 2)) 86px max(32px, calc((100vw - 1360px) / 2)); padding-right: 48px; }
.hero-copy h1 { max-width: 690px; margin: 16px 0 24px; }
.hero-copy h1 em { color: var(--green); font-style: normal; }
.hero-copy > p { max-width: 610px; margin-bottom: 31px; color: #465c55; font-size: 1.02rem; }
.hero-actions { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.hero-stats { display: flex; gap: 18px; margin-top: 60px; }
.hero-stats div { display: grid; gap: 4px; width: 185px; padding-left: 13px; border-left: 2px solid var(--gold); }
.hero-stats strong { font-size: .85rem; }
.hero-stats span { color: var(--muted); font-size: .71rem; line-height: 1.35; }
.hero-art { position: relative; min-height: 602px; overflow: hidden; background: radial-gradient(circle at 75% 30%, #c6e1d7 0 10%, transparent 10.5%), linear-gradient(145deg, #00795b, #019266 62%, #54b98e); }
.hero-art:after { position: absolute; inset: 0; content: ""; opacity: .13; background-image: repeating-radial-gradient(circle at 76% 42%, transparent 0 7px, #fff 8px 9px, transparent 10px 27px); }
.hero-lot-card { position: absolute; z-index: 2; top: 108px; left: 14%; display: grid; gap: 12px; width: min(336px, 60%); padding: 25px; border: 1px solid rgba(255,255,255,.42); border-radius: 20px; background: rgba(255,255,255,.94); box-shadow: 0 30px 60px rgba(0,49,36,.24); }
.hero-lot-card > span { color: var(--green); font-size: .7rem; font-weight: 800; }
.hero-lot-card b { font-size: 1.3rem; letter-spacing: -.04em; }
.hero-lot-card small { color: var(--muted); }
.hero-lot-card hr { width: 100%; border: 0; border-top: 1px solid var(--line); }
.hero-lot-card div { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: .71rem; }
.hero-lot-card div strong { color: var(--ink); }
.hero-flower { position: absolute; z-index: 1; border-radius: 48% 52% 45% 55%; background: radial-gradient(circle at 30% 20%, #fff1e8 0 7%, transparent 8%), radial-gradient(circle at 61% 35%, #eac1ac 0 16%, #c73030 17% 34%, #9a1e27 35% 46%, transparent 47%); filter: drop-shadow(0 22px 18px rgba(0,0,0,.13)); transform: rotate(-12deg); }
.hero-flower:after { position: absolute; bottom: -168px; left: 48%; width: 12px; height: 188px; border-radius: 30px; background: #195e49; content: ""; }
.flower-one { top: 75px; right: 12%; width: 265px; height: 265px; }
.flower-two { right: 31%; bottom: 52px; width: 175px; height: 175px; transform: rotate(24deg) scale(.85); }
.flower-three { right: -4%; bottom: 8px; width: 225px; height: 225px; transform: rotate(-35deg) scale(1.1); }

.trust-row { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: -1px; border: 1px solid var(--line); border-radius: 0 0 20px 20px; background: white; }
.trust-row article { display: flex; gap: 13px; padding: 23px 20px; border-right: 1px solid var(--line); }
.trust-row article:last-child { border: 0; }
.trust-row .icon { color: var(--green); font-size: 1.55rem; }
.trust-row strong, .trust-row span { display: block; }
.trust-row strong { margin-bottom: 4px; font-size: .79rem; }
.trust-row span { color: var(--muted); font-size: .65rem; line-height: 1.4; }

.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 25px; margin-bottom: 33px; }
.section-heading h2 { margin: 10px 0 0; }
.section-heading.inverse { color: #fff; }
.section-heading.inverse .section-label { color: #f1d98d; }
.section-heading.inverse p { max-width: 400px; margin: 0; color: rgba(255,255,255,.72); font-size: .88rem; }
.category-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.category-card { position: relative; display: grid; gap: 8px; min-height: 172px; padding: 21px; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #fff; text-align: left; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.category-card:hover { transform: translateY(-4px); border-color: var(--green); box-shadow: var(--shadow); }
.category-card > span { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; background: #e7f4ef; color: var(--green); font-size: 1.5rem; }
.category-card strong { font-size: .92rem; }
.category-card small { color: var(--muted); font-size: .68rem; line-height: 1.4; }
.category-card .icon { position: absolute; right: 18px; bottom: 15px; color: var(--red); }
.cat-plant { background: #f3faf7; }.cat-seedling { background: #fffdf4; }.cat-pack { background: #fff7f5; }.cat-custom { background: #f4f4fb; }

.legend { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: .7rem; }
.dot { width: 8px; height: 8px; border-radius: 50%; }.dot.green { background: var(--green); }.dot.gold { background: var(--gold); }
.product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.product-card { position: relative; display: flex; flex-direction: column; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 17px; background: white; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.product-card:hover { z-index: 1; transform: translateY(-5px); border-color: rgba(1,146,102,.35); box-shadow: var(--shadow); }
.card-topline { position: absolute; z-index: 2; top: 20px; left: 20px; right: 20px; display: flex; justify-content: space-between; gap: 8px; pointer-events: none; }
.card-topline button { pointer-events: auto; }
.status-chip { display: inline-flex; align-items: center; gap: 4px; width: max-content; padding: 6px 8px; border-radius: 8px; font-size: .61rem; font-weight: 800; }
.status-chip.verified { background: #e5f6ee; color: var(--green-deep); }.status-chip.pending { background: #fbf1da; color: #8e6911; }
.favourite { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 50%; background: rgba(255,255,255,.9); color: var(--red); font-size: 1.1rem; }
.product-visual { position: relative; min-height: 190px; margin-bottom: 15px; overflow: hidden; border-radius: 11px; background: linear-gradient(140deg, #d8ebe1, #7db99b); }
.product-visual:before { position: absolute; inset: 0; content: ""; opacity: .35; background: repeating-linear-gradient(110deg, transparent 0 28px, rgba(255,255,255,.7) 29px 30px, transparent 31px 55px); }
.product-visual.has-image:before { z-index: 1; opacity: .13; }
.product-visual.has-image img { position: absolute; z-index: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.product-visual i { position: absolute; z-index: 1; width: 92px; height: 92px; border-radius: 44% 56% 40% 60%; background: #c53030; transform: rotate(21deg); box-shadow: inset 13px 10px 0 rgba(255,255,255,.20), 15px 17px 22px rgba(1,41,31,.19); }
.product-visual i:nth-child(1) { left: 32%; top: 24%; }.product-visual i:nth-child(2) { left: 17%; top: 41%; transform: scale(.67) rotate(-24deg); }.product-visual i:nth-child(3) { left: 53%; top: 43%; transform: scale(.72) rotate(66deg); }.product-visual i:nth-child(4) { left: 43%; top: 8%; transform: scale(.55) rotate(-30deg); }.product-visual i:nth-child(5) { left: 61%; top: 18%; transform: scale(.43) rotate(26deg); }
.product-visual b { position: absolute; z-index: 0; left: 47%; bottom: -55px; width: 9px; height: 163px; border-radius: 12px; background: #17624f; transform: rotate(-8deg); }
.product-visual em { position: absolute; right: 15px; bottom: 11px; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: rgba(255,255,255,.85); color: var(--green); font-size: .65rem; font-style: normal; font-weight: 900; }
.product-visual.has-image em { z-index: 2; }
.product-visual.tulip { background: linear-gradient(140deg, #eff2ca, #9fbc5d); }.product-visual.tulip i { width: 55px; height: 94px; border-radius: 52% 48% 20% 20%; background: #e1ad22; }.product-visual.tulip i:nth-child(1){left:33%;top:18%}.product-visual.tulip i:nth-child(2){left:19%;top:31%}.product-visual.tulip i:nth-child(3){left:50%;top:34%}.product-visual.tulip i:nth-child(4){left:58%;top:16%}.product-visual.tulip i:nth-child(5){left:43%;top:7%}
.product-visual.hydrangea { background: linear-gradient(140deg, #e3e7fa, #8099cc); }.product-visual.hydrangea i { width: 53px; height: 53px; background: #737bd2; }.product-visual.hydrangea i:nth-child(1){left:36%;top:20%}.product-visual.hydrangea i:nth-child(2){left:22%;top:35%}.product-visual.hydrangea i:nth-child(3){left:48%;top:40%}.product-visual.hydrangea i:nth-child(4){left:53%;top:21%}.product-visual.hydrangea i:nth-child(5){left:37%;top:48%}
.product-visual.monstera { background: linear-gradient(140deg, #e3f0dc, #4b986a); }.product-visual.monstera i { width: 90px; height: 122px; border-radius: 84% 16% 86% 14%; background: #147449; transform: rotate(35deg); }.product-visual.monstera i:nth-child(1){left:28%;top:18%}.product-visual.monstera i:nth-child(2){left:47%;top:24%;transform:scale(.7) rotate(-36deg)}.product-visual.monstera i:nth-child(3){left:14%;top:47%;transform:scale(.55) rotate(-11deg)}.product-visual.monstera i:nth-child(4){left:59%;top:46%;transform:scale(.5) rotate(22deg)}.product-visual.monstera i:nth-child(5){display:none}
.product-visual.gypsophila { background: linear-gradient(140deg, #f2ede6, #c8c1ae); }.product-visual.gypsophila i { width: 22px; height: 22px; background: #fff; }.product-visual.gypsophila i:nth-child(1){left:35%;top:22%}.product-visual.gypsophila i:nth-child(2){left:22%;top:43%}.product-visual.gypsophila i:nth-child(3){left:54%;top:45%}.product-visual.gypsophila i:nth-child(4){left:63%;top:23%}.product-visual.gypsophila i:nth-child(5){left:44%;top:10%}
.product-visual.anthurium { background: linear-gradient(140deg, #f4e2df, #ca725b); }.product-visual.anthurium i { width: 72px; height: 100px; border-radius: 60% 0 60% 60%; background: #bd3439; }.product-visual.anthurium i:nth-child(1){left:34%;top:19%}.product-visual i:nth-child(2){left:18%;top:41%}.product-visual.anthurium i:nth-child(3){left:53%;top:40%}.product-visual.anthurium i:nth-child(4){left:54%;top:11%}.product-visual.anthurium i:nth-child(5){display:none}
.product-copy { flex: 1; padding: 0 4px; }
.product-copy .eyebrow { margin-bottom: 7px; }.product-copy h3 { margin: 0 0 6px; }.seller-line { margin: 0 0 14px; color: var(--muted); font-size: .69rem; }
.price-line { display: grid; gap: 4px; margin-bottom: 11px; }.price-line strong { font-size: .81rem; }.price-line span { color: var(--muted); font-size: .65rem; }
.lot-meta { display: flex; justify-content: space-between; gap: 8px; margin-bottom: 14px; color: var(--muted); font-size: .61rem; }.lot-meta span { display: inline-flex; align-items: center; gap: 4px; }

.flow-section { padding-block: 90px; background: var(--green-deep); }.flow-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }.flow-grid article { position: relative; padding: 24px; overflow: hidden; border: 1px solid rgba(255,255,255,.22); border-radius: 16px; color: #fff; }.flow-grid article b { position: absolute; top: 13px; right: 16px; color: rgba(255,255,255,.35); font-size: 2.4rem; letter-spacing: -.08em; }.flow-grid article .icon { margin-bottom: 35px; color: #f1d98d; font-size: 1.65rem; }.flow-grid article h3 { margin-bottom: 8px; }.flow-grid article p { margin: 0; color: rgba(255,255,255,.72); font-size: .73rem; line-height: 1.55; }
.quality-banner { display: flex; justify-content: space-between; align-items: center; gap: 36px; margin-block: 82px; padding: 55px; overflow: hidden; border-radius: 22px; background: linear-gradient(100deg, #c53030 0 56%, #aa282d 56% 100%); color: white; }.quality-banner > div { max-width: 800px; }.quality-banner .section-label { color: #f1d98d; }.quality-banner h2 { margin: 12px 0; }.quality-banner p { max-width: 570px; margin: 0; color: rgba(255,255,255,.82); }.quality-banner .button-outline { flex: none; }
.insight-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 16px; }.map-card, .article-card { position: relative; min-height: 315px; padding: 36px; overflow: hidden; border-radius: 20px; }.map-card { background: #e8f5ef; }.map-card h2 { margin: 11px 0; }.map-card .text-button { position: absolute; bottom: 31px; }.route-lines { position: absolute; inset: 0; pointer-events: none; }.route-lines i { position: absolute; width: 50%; height: 30%; border-top: 2px dashed #019266; border-radius: 50%; transform: rotate(-18deg); }.route-lines i:nth-child(1){left:12%;top:26%}.route-lines i:nth-child(2){left:29%;top:38%;transform:rotate(17deg)}.route-lines i:nth-child(3){left:44%;top:19%;transform:rotate(-44deg)}.route-lines i:nth-child(4){left:55%;top:51%;transform:rotate(14deg)}.map-points { position: absolute; inset: 0; }.map-points span { position: absolute; padding: 6px 9px; border-radius: 8px; background: #fff; color: var(--green-deep); box-shadow: 0 7px 16px rgba(1,88,64,.12); font-size: .67rem; font-weight: 800; }.map-points span:nth-child(1){right:37%;top:34%}.map-points span:nth-child(2){right:18%;top:52%}.map-points span:nth-child(3){right:7%;top:26%}.map-points span:nth-child(4){right:2%;top:68%}.article-card { display: flex; flex-direction: column; justify-content: end; background: var(--gold); color: white; }.article-card:before { position: absolute; top: -75px; right: -45px; width: 220px; height: 220px; border: 1px solid rgba(255,255,255,.6); border-radius: 50%; box-shadow: 0 0 0 45px rgba(255,255,255,.1), 0 0 0 90px rgba(255,255,255,.07); content: ""; }.article-card .section-label { color: #fff7d8; }.article-card h3 { position: relative; max-width: 410px; margin: 12px 0; font-size: 1.55rem; }.article-card p { position: relative; max-width: 410px; margin-bottom: 22px; color: rgba(255,255,255,.86); font-size: .76rem; }.article-card .button-primary { align-self: start; background: #fff; color: var(--green-deep); }

.site-footer { position: relative; overflow: hidden; margin-top: 90px; background: #eaf1ef; }.wall-pattern { position: absolute; top: 0; left: 0; right: 0; height: 42px; background: linear-gradient(135deg, transparent 75%, rgba(197,48,48,.96) 75%) 0 0/32px 42px, linear-gradient(225deg, transparent 75%, rgba(197,48,48,.96) 75%) 16px 0/32px 42px; opacity: .9; }.footer-grid { display: grid; grid-template-columns: 1.35fr repeat(3, 1fr); gap: 38px; width: var(--wrapper); padding: 88px 0 43px; margin: auto; }.footer-logo { width: 180px; height: 78px; object-fit: contain; object-position: left center; }.footer-grid p { max-width: 300px; margin: 7px 0; color: #52655f; font-size: .71rem; }.footer-note strong { color: var(--red); }.footer-grid h4 { margin: 10px 0 14px; font-size: .75rem; }.footer-grid section > button { display: block; margin: 8px 0; padding: 0; background: transparent; color: #52655f; font-size: .69rem; text-align: left; }.footer-grid section > button:hover { color: var(--green); }.footer-bottom { display: flex; justify-content: space-between; gap: 16px; width: var(--wrapper); padding: 16px 0 22px; border-top: 1px solid rgba(97,112,107,.2); margin: auto; color: #61706b; font-size: .63rem; }

.page-hero { padding: 65px 0 56px; background: linear-gradient(126deg, #e8f3ef, #f8faf9 65%); }.page-hero.compact h1 { max-width: 940px; margin: 12px 0; font-size: clamp(2.25rem, 4vw, 4rem); }.page-hero.compact p { max-width: 650px; margin: 0; color: #50645d; }.split-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; }.catalog-summary { display: grid; min-width: 200px; padding: 18px; border-radius: 14px; background: #fff; box-shadow: 0 8px 22px rgba(21,35,31,.07); }.catalog-summary span, .catalog-summary small { color: var(--muted); font-size: .66rem; }.catalog-summary strong { margin: 4px 0; color: var(--green); font-size: 1.55rem; letter-spacing: -.06em; }
.catalog-layout { display: grid; grid-template-columns: 242px minmax(0, 1fr); gap: 26px; align-items: start; }.catalog-layout > * { min-width: 0; }.filters { position: sticky; top: 124px; width: 100%; min-width: 0; max-height: calc(100dvh - 142px); padding: 19px; overflow-y: auto; border: 1px solid var(--line); border-radius: 16px; background: #fff; scrollbar-width: thin; }.filter-title { display: flex; justify-content: space-between; align-items: center; }.filter-title h3 { margin: 0; }.filter-title button { background: transparent; color: var(--red); font-size: .67rem; font-weight: 800; }.filter-title button:disabled { cursor: default; opacity: .42; }.filters > label { display: grid; gap: 7px; margin: 21px 0; font-size: .69rem; font-weight: 800; }.input-shell { display: flex; align-items: center; gap: 6px; min-width: 0; height: 38px; padding: 0 9px; border: 1px solid var(--line); border-radius: 9px; color: var(--muted); }.input-shell input { min-width: 0; width: 100%; border: 0; font-size: .68rem; }.filters fieldset { padding: 15px 0; border: 0; border-top: 1px solid var(--line); }.filters legend { margin-bottom: 9px; font-size: .7rem; font-weight: 800; }.radio-line, .check-line { display: flex; align-items: center; gap: 7px; margin: 9px 0; color: #52645e; font-size: .67rem; }.radio-line input, .check-line input { flex: 0 0 14px; width: 14px; height: 14px; margin: 0; accent-color: var(--green); }.range-line { display: flex; justify-content: space-between; margin-top: 11px; color: var(--muted); font-size: .61rem; }.range-line b { color: var(--ink); }.filters input[type="range"] { width: 100%; accent-color: var(--green); }.filter-disclaimer { margin: 4px 0; color: var(--muted); font-size: .62rem; line-height: 1.45; }.catalog-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 22px; }.category-tabs { display: flex; gap: 7px; min-width: 0; max-width: 100%; overflow: auto; padding-bottom: 2px; scrollbar-width: thin; }.category-tabs button, .sort-button { flex: none; padding: 8px 11px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: #52645e; font-size: .65rem; font-weight: 800; }.category-tabs button.active { border-color: var(--green); background: var(--green); color: #fff; }.sort-button { display: inline-flex; align-items: center; gap: 5px; }.sort-button select { min-width: 118px; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; font-weight: inherit; }.sort-button:focus-within { border-color: var(--green); box-shadow: 0 0 0 3px rgba(1,146,102,.12); }.catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }.empty-state { display: grid; justify-items: center; grid-column: 1 / -1; padding: 60px 20px; border: 1px dashed var(--line); border-radius: 18px; background: #fff; text-align: center; }.empty-state > span { color: var(--green); font-size: 2.4rem; }.empty-state h3 { margin: 8px 0; }.empty-state p { max-width: 370px; color: var(--muted); font-size: .77rem; }.empty-state.large { min-height: 300px; align-content: center; }

.product-detail { padding-top: 45px; }.detail-grid { display: grid; grid-template-columns: minmax(0, .96fr) minmax(440px, .94fr); gap: 34px; }.visual-large { min-height: 490px; border-radius: 21px; }.visual-large i { width: 188px; height: 188px; }.visual-large i:nth-child(1){left:31%;top:22%}.visual-large i:nth-child(2){left:12%;top:45%}.visual-large i:nth-child(3){left:55%;top:43%}.visual-large i:nth-child(4){left:43%;top:7%}.visual-large i:nth-child(5){left:65%;top:21%}.visual-large b { left: 47%; bottom: -120px; width: 18px; height: 420px; }.visual-large.tulip i { width: 105px; height: 205px; }.visual-large.hydrangea i { width: 100px; height: 100px; }.visual-large.monstera i { width: 180px; height: 250px; }.visual-large.gypsophila i { width: 42px; height: 42px; }.visual-large.anthurium i { width: 155px; height: 220px; }.detail-gallery { display: flex; gap: 9px; margin-top: 13px; }.detail-gallery span { width: 61px; height: 52px; border-radius: 10px; background: var(--cloud); }.detail-gallery span.active { border: 2px solid var(--green); background: linear-gradient(135deg, #c6e1d7, #5eaf87); }.detail-summary { padding: 34px; border: 1px solid var(--line); border-radius: 21px; background: #fff; box-shadow: var(--shadow); }.summary-top { display: flex; justify-content: space-between; align-items: start; gap: 12px; color: var(--muted); font-size: .7rem; }.detail-summary .eyebrow { margin: 24px 0 7px; }.detail-summary h1 { margin: 0 0 9px; font-size: clamp(2.3rem, 3.8vw, 4rem); }.product-latin { margin-bottom: 25px; color: var(--muted); font-size: .85rem; }.big-price { margin-bottom: 26px; color: var(--green); font-size: 2rem; font-weight: 900; letter-spacing: -.06em; }.big-price small { color: var(--muted); font-size: .84rem; letter-spacing: 0; }.batch-box { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 22px; border-radius: 13px; background: var(--cloud); }.batch-box div { display: grid; gap: 4px; padding: 13px; border-right: 1px solid #dbe6e1; }.batch-box div:last-child { border: 0; }.batch-box span { color: var(--muted); font-size: .62rem; }.batch-box strong { font-size: .69rem; line-height: 1.35; }.detail-actions { display: flex; gap: 10px; }.availability { margin: 19px 0 0; color: var(--muted); font-size: .68rem; }.availability .icon { color: var(--gold); }.specification-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; padding-top: 34px; }.spec-card { padding: 27px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.spec-card h2 { margin: 0 0 19px; font-size: 1.25rem; }.spec-list { display: grid; gap: 0; }.spec-list span { display: flex; justify-content: space-between; gap: 10px; padding: 11px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: .7rem; }.spec-list b { max-width: 155px; color: var(--ink); text-align: right; }.doc-status { display: flex; justify-content: space-between; align-items: center; gap: 11px; padding: 11px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: .68rem; }.doc-status span { display: inline-flex; gap: 5px; }.doc-status .icon { color: var(--green); }.doc-status b { color: var(--ink); font-size: .65rem; text-align: right; }.risk-card { border-color: rgba(197,48,48,.25); background: #fffafa; }.risk-card p { margin-bottom: 9px; color: var(--red); font-size: 1.05rem; font-weight: 900; }.risk-card small { display: block; margin-bottom: 17px; color: var(--muted); font-size: .7rem; line-height: 1.5; }

.order-layout, .checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 27px; align-items: start; }.order-main { padding: 27px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.panel-heading { display: flex; justify-content: space-between; align-items: start; gap: 20px; margin-bottom: 20px; }.panel-heading h2 { margin: 7px 0 0; font-size: 1.7rem; }.rfq-list { display: grid; gap: 11px; }.rfq-item { display: grid; grid-template-columns: 40px 104px minmax(0, 1fr) 110px 28px; align-items: center; gap: 13px; padding: 12px; border-top: 1px solid var(--line); }.rfq-number { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 50%; background: #f2f6f4; color: var(--green); font-size: .65rem; font-weight: 900; }.rfq-item .product-visual { min-height: 78px; margin: 0; }.rfq-item .product-visual i { width: 40px; height: 40px; }.rfq-item .product-visual b { height: 80px; bottom: -26px; }.rfq-item h3 { margin: 0 0 5px; }.rfq-item p { margin: 0 0 7px; color: var(--muted); font-size: .66rem; }.rfq-moq { display: grid; gap: 4px; color: var(--muted); font-size: .64rem; }.rfq-moq b { color: var(--ink); font-size: .7rem; }.remove { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #fff2f1; color: var(--red); }.request-notes { margin-top: 24px; padding-top: 23px; border-top: 1px solid var(--line); }.request-notes h3 { margin-bottom: 15px; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }.form-grid label { display: grid; gap: 6px; color: #53645e; font-size: .65rem; font-weight: 800; }.form-grid label.full { grid-column: 1 / -1; }.form-grid input, .form-grid select, .form-grid textarea { width: 100%; min-height: 43px; padding: 10px 11px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: var(--ink); }.form-grid textarea { min-height: 94px; resize: vertical; }.order-summary { position: sticky; top: 126px; padding: 26px; border: 1px solid rgba(1,146,102,.20); border-radius: 18px; background: #f2faf7; }.order-summary h2 { margin: 8px 0 22px; font-size: 1.55rem; }.summary-line { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-bottom: 1px solid rgba(1,146,102,.14); color: #52645e; font-size: .7rem; }.summary-line b { color: var(--ink); text-align: right; }.order-summary hr { margin: 19px 0; border: 0; border-top: 1px solid rgba(1,146,102,.20); }.order-summary p { color: var(--muted); font-size: .67rem; line-height: 1.52; }.order-summary .button { margin-top: 10px; }.button.disabled { pointer-events: none; }.checkout-main { display: grid; gap: 16px; }.form-panel { padding: 27px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.form-panel h2 { margin-bottom: 21px; font-size: 1.3rem; }.form-panel > p { max-width: 650px; color: var(--muted); font-size: .78rem; }.route-choice { display: grid; gap: 9px; }.route-option { display: grid; gap: 4px; padding: 15px; border: 1px solid var(--line); border-radius: 10px; background: #fff; text-align: left; font-weight: 800; }.route-option span { color: var(--muted); font-size: .65rem; font-weight: 600; }.route-option.active { border-color: var(--green); background: #f1faf6; color: var(--green-deep); }.large-check { margin: 17px 0 0; color: var(--ink); font-size: .72rem; }.notice { display: flex; gap: 10px; padding: 13px; border: 1px solid #eadcae; border-radius: 10px; background: #fff9e4; color: #75601b; font-size: .71rem; line-height: 1.45; }.notice .icon { color: var(--gold); font-size: 1.3rem; }

.routes-hero { padding: 82px 0 210px; color: #fff; background: linear-gradient(120deg, #007c5b, #004f3c); }.routes-hero .breadcrumbs { color: rgba(255,255,255,.75); }.routes-hero .section-label { color: #f3d782; }.routes-hero h1 { max-width: 840px; margin: 13px 0 18px; }.routes-hero p { max-width: 630px; margin: 0; color: rgba(255,255,255,.8); }.route-map { position: relative; height: 410px; margin-top: -145px; overflow: hidden; border-radius: 23px; background: #eaf5f0; box-shadow: 0 20px 50px rgba(0,79,60,.18); }.route-map:before { position: absolute; inset: 0; opacity: .5; background-image: linear-gradient(30deg, transparent 48%, #cae3d6 49% 51%, transparent 52%), linear-gradient(120deg, transparent 48%, #cae3d6 49% 51%, transparent 52%); background-size: 135px 115px; content: ""; }.route-map svg { position: absolute; inset: 0; width: 100%; height: 100%; }.route-map path { fill: none; stroke: var(--red); stroke-width: 2; stroke-dasharray: 8 9; }.map-label { position: absolute; z-index: 1; display: grid; gap: 4px; padding: 9px 11px; border-radius: 9px; background: #fff; box-shadow: 0 8px 19px rgba(0,74,53,.12); color: var(--green-deep); font-size: .72rem; font-weight: 900; }.map-label span { color: var(--muted); font-size: .57rem; font-weight: 600; }.kunming{left:15%;top:63%}.guangzhou{left:27%;top:79%}.moscow{left:68%;top:38%}.almaty{left:56%;top:75%}.riga{right:8%;top:23%}.route-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 18px; }.route-cards article { padding: 21px; border: 1px solid var(--line); border-radius: 15px; background: #fff; }.route-cards span { color: var(--red); font-size: .75rem; font-weight: 900; }.route-cards h3 { margin: 13px 0 8px; }.route-cards p { margin: 0; color: var(--muted); font-size: .69rem; line-height: 1.5; }.notice-block { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 37px; border-radius: 18px; background: #f1f6f4; }.notice-block > div { display: flex; gap: 17px; max-width: 720px; }.notice-block > div > .icon { color: var(--green); font-size: 2rem; }.notice-block h2 { margin: 0 0 7px; font-size: 1.5rem; }.notice-block p { margin: 0; color: var(--muted); font-size: .75rem; }

.quality-hero { padding: 96px 0; overflow: hidden; background: #c53030; color: #fff; }.quality-hero .wrapper { position: relative; }.quality-hero .wrapper:after { position: absolute; right: 0; top: -170px; width: 500px; height: 500px; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; box-shadow: 0 0 0 50px rgba(255,255,255,.10), 0 0 0 100px rgba(255,255,255,.07), 0 0 0 150px rgba(255,255,255,.04); content: ""; }.quality-hero h1 { position: relative; z-index: 1; max-width: 780px; margin: 13px 0; }.quality-hero p { position: relative; z-index: 1; max-width: 570px; margin: 0; color: rgba(255,255,255,.82); }.quality-hero .section-label { color: #f2d783; }.quality-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }.quality-grid article { position: relative; padding: 25px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: #fff; }.quality-grid article > span { position: absolute; right: 16px; top: 12px; color: #e5ece9; font-size: 2rem; font-weight: 900; letter-spacing: -.08em; }.quality-grid .icon { margin: 22px 0 28px; color: var(--green); font-size: 1.75rem; }.quality-grid h2 { margin-bottom: 9px; font-size: 1.22rem; }.quality-grid p { margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.55; }.inspection-panel { display: grid; grid-template-columns: .95fr 1.05fr; gap: 50px; align-items: center; padding: 60px; border-radius: 22px; background: #eaf5f0; }.inspection-panel h2 { margin: 10px 0 18px; }.inspection-panel ul { padding-left: 20px; color: #50645d; font-size: .8rem; line-height: 1.85; }.inspection-card { max-width: 450px; justify-self: end; padding: 19px; border-radius: 17px; background: #fff; box-shadow: var(--shadow); }.inspection-card header { display: flex; justify-content: space-between; color: var(--green); font-size: .7rem; font-weight: 900; }.qc-photo { position: relative; height: 170px; margin: 15px 0; overflow: hidden; border-radius: 11px; background: linear-gradient(140deg, #e1ede0, #8cc092); }.qc-photo i { position: absolute; width: 75px; height: 75px; border-radius: 50% 50% 48% 52%; background: #c53030; box-shadow: inset 12px 10px 0 rgba(255,255,255,.25); }.qc-photo i:nth-child(1){left:30%;top:30%}.qc-photo i:nth-child(2){left:47%;top:20%;transform:scale(.74)}.qc-photo i:nth-child(3){left:53%;top:47%;transform:scale(.58)}.qc-line { display: flex; justify-content: space-between; gap: 14px; padding: 9px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: .68rem; }.qc-line b { color: var(--ink); text-align: right; }

.document-table { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.table-head, .document-table article { display: grid; grid-template-columns: 1.2fr 1fr .8fr 1fr; gap: 18px; align-items: center; padding: 16px 22px; }.table-head { background: #eaf1ef; color: #52645e; font-size: .66rem; font-weight: 900; }.document-table article { border-top: 1px solid var(--line); font-size: .74rem; }.document-table article span:nth-child(2), .document-table article span:nth-child(4) { color: var(--muted); }.document-status { display: inline-flex; align-items: center; gap: 5px; width: max-content; color: var(--green-deep); font-size: .65rem; font-weight: 800; }.document-status .icon { color: var(--green); }

.cabinet-shell { display: grid; grid-template-columns: 265px minmax(0, 1fr); min-height: calc(100vh - 114px); background: #f4f7f6; }.cabinet-sidebar { display: flex; flex-direction: column; padding: 34px 24px; border-right: 1px solid var(--line); background: #fff; }.profile-avatar { display: grid; place-items: center; width: 59px; height: 59px; margin-bottom: 16px; border-radius: 50%; background: var(--green); color: #fff; font-size: 1.45rem; font-weight: 900; }.cabinet-sidebar .eyebrow { margin-bottom: 5px; }.cabinet-sidebar h2 { margin-bottom: 19px; font-size: 1.28rem; }.role-switch { display: flex; align-items: center; gap: 6px; padding: 11px; border-radius: 10px; background: #f0f7f4; color: var(--green-deep); font-size: .67rem; font-weight: 800; text-align: left; }.cabinet-sidebar nav { display: grid; gap: 3px; margin: 26px -7px; }.cabinet-sidebar nav button { padding: 11px 9px; border-radius: 8px; background: transparent; color: #52645e; font-size: .75rem; text-align: left; }.cabinet-sidebar nav button.active, .cabinet-sidebar nav button:hover { background: var(--cloud); color: var(--green-deep); font-weight: 800; }.exit { margin-top: auto; padding: 8px 0; background: transparent; color: var(--red); font-size: .69rem; text-align: left; }.cabinet-content { width: min(1230px, calc(100vw - 330px)); padding: 48px 40px 90px; margin-inline: auto; }.cabinet-top { display: flex; justify-content: space-between; align-items: end; gap: 25px; margin-bottom: 30px; }.cabinet-top h1 { max-width: 770px; margin: 10px 0 0; font-size: clamp(2rem, 3.7vw, 3.5rem); }.dashboard-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 27px; }.dashboard-stats article { display: grid; gap: 6px; padding: 19px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }.dashboard-stats span, .dashboard-stats small { color: var(--muted); font-size: .65rem; }.dashboard-stats b { color: var(--green); font-size: 1.9rem; letter-spacing: -.07em; }.cabinet-panel { padding: 26px; border: 1px solid var(--line); border-radius: 17px; background: #fff; }.dashboard-table { display: grid; }.dashboard-table > div { display: grid; grid-template-columns: 150px 1.4fr 1fr auto; gap: 13px; align-items: center; padding: 15px 0; border-top: 1px solid var(--line); }.dashboard-table span, .dashboard-table small { color: var(--muted); font-size: .67rem; }.dashboard-table b { font-size: .76rem; }.dashboard-table em { width: max-content; padding: 6px 8px; border-radius: 7px; font-size: .61rem; font-style: normal; font-weight: 800; }.dashboard-table em.yellow { background: #fff3d5; color: #937116; }.dashboard-table em.green { background: #e5f6ee; color: var(--green-deep); }.dashboard-table em.blue { background: #e9effb; color: #426baf; }.cabinet-panel.two-columns { display: grid; grid-template-columns: .9fr 1.1fr; gap: 35px; margin-top: 15px; }.cabinet-panel.two-columns h2 { margin: 9px 0; font-size: 1.45rem; }.cabinet-panel.two-columns p { color: var(--muted); font-size: .74rem; }.timeline { display: grid; grid-template-columns: 15px 1fr; column-gap: 10px; align-items: center; }.timeline span { position: relative; width: 10px; height: 10px; border: 2px solid var(--green); border-radius: 50%; }.timeline span:not(:last-of-type):after { position: absolute; left: 3px; top: 8px; width: 2px; height: 48px; background: #cde4da; content: ""; }.timeline p { margin: 0; padding: 9px 0; font-size: .68rem; line-height: 1.4; }.timeline b { color: var(--ink); }

.supplier-hero { padding: 92px 0; background: linear-gradient(110deg, #e8f5ef 0 57%, #007c5b 57%); }.supplier-hero .wrapper { display: grid; grid-template-columns: 1fr 390px; gap: 70px; align-items: center; }.supplier-hero h1 { margin: 11px 0 18px; }.supplier-hero p { max-width: 590px; color: #50645e; }.supplier-checklist { padding: 26px; border-radius: 19px; background: #fff; box-shadow: 0 23px 45px rgba(0,71,53,.27); }.supplier-checklist h3 { margin: 20px 0 13px; font-size: 1.55rem; }.supplier-checklist > div { display: flex; justify-content: space-between; gap: 8px; padding: 13px 0; border-top: 1px solid var(--line); color: var(--muted); font-size: .71rem; }.supplier-checklist > div b { color: var(--ink); }.supplier-checklist .button { margin-top: 18px; }.onboarding-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }.onboarding-grid article { padding: 23px; border-radius: 15px; background: #fff; border: 1px solid var(--line); }.onboarding-grid b { color: var(--red); font-size: .77rem; }.onboarding-grid h3 { margin: 18px 0 8px; }.onboarding-grid p { margin: 0; color: var(--muted); font-size: .71rem; line-height: 1.55; }

.text-page { min-height: 660px; padding-top: 75px; }.text-page .section-label { margin-top: 16px; }.text-page h1 { max-width: 940px; margin: 13px 0; }.text-page .lead { max-width: 800px; color: #50645e; font-size: 1.1rem; }.text-page-grid { display: grid; grid-template-columns: 1fr 315px; gap: 50px; margin-top: 51px; }.text-page-grid article { max-width: 760px; }.text-page-grid article h2 { margin-bottom: 16px; font-size: 1.7rem; }.text-page-grid article p { color: #50645e; font-size: .9rem; }.text-page-grid article .button { margin-top: 15px; }.text-page-grid aside { align-self: start; padding: 25px; border-radius: 16px; background: #eaf5f0; }.text-page-grid aside h3 { margin: 10px 0 15px; font-size: 1.25rem; }.text-page-grid aside ul { padding-left: 17px; margin: 0; color: #50645e; font-size: .71rem; line-height: 1.85; }

.reference-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin: 38px 0; }.reference-grid article { position: relative; min-height: 200px; padding: 27px; overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.reference-grid article > span { position: absolute; top: 13px; right: 17px; color: #e9f0ed; font-size: 2.25rem; font-weight: 900; letter-spacing: -.08em; }.reference-grid h2 { max-width: 430px; margin: 17px 0 10px; font-size: 1.4rem; }.reference-grid p { max-width: 530px; margin: 0; color: var(--muted); font-size: .78rem; }.reference-page .notice-block { margin: 0; }

.modal-backdrop { position: fixed; z-index: 50; inset: 0; display: grid; place-items: center; padding: 24px; background: rgba(7,23,17,.62); backdrop-filter: blur(4px); }.product-modal { position: relative; display: grid; grid-template-columns: 250px minmax(270px, 1fr); gap: 24px; width: min(690px, 100%); padding: 18px; border-radius: 20px; background: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.36); }.product-modal .product-visual { min-height: 250px; margin: 0; }.product-modal .status-chip { margin: 14px 0; }.product-modal h2 { margin: 0 0 10px; font-size: 2rem; }.product-modal p { color: var(--muted); font-size: .76rem; }.modal-close { position: absolute; right: 10px; top: 10px; display: grid; place-items: center; width: 31px; height: 31px; border-radius: 50%; background: var(--cloud); color: var(--red); font-size: 1.2rem; }.modal-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin: 19px 0; }.modal-facts span { display: grid; gap: 3px; padding: 9px; border-radius: 8px; background: var(--cloud); color: var(--muted); font-size: .58rem; }.modal-facts b { color: var(--ink); font-size: .63rem; }.modal-actions { display: flex; gap: 9px; }.toast { position: fixed; z-index: 80; bottom: 27px; left: 50%; display: flex; align-items: center; gap: 8px; padding: 13px 18px; transform: translateX(-50%); border-radius: 11px; background: #183b30; box-shadow: 0 12px 30px rgba(0,0,0,.25); color: #fff; font-size: .72rem; font-weight: 800; }.toast .icon { color: #a6e3c8; }
.catalog-source { display: inline-flex; align-items: center; gap: 5px; width: max-content; padding: 5px 8px; border-radius: 999px; background: #edf1ef; color: #53645e; font-size: .61rem; font-weight: 800; line-height: 1.2; text-transform: none; letter-spacing: 0; }.catalog-source-live { background: #e5f6ee; color: var(--green-deep); }.catalog-source-snapshot { background: #fff5dc; color: #7d5d16; }.catalog-summary .catalog-source { justify-self: end; margin-top: 5px; }.price-on-request { color: var(--green-deep); }.price-value { display: block; }.price-reference-note { display: block; margin-top: 4px; color: #8a7642; font-size: .56rem; font-weight: 700; letter-spacing: 0; line-height: 1.25; }.catalog-pagination { display: flex; justify-content: center; align-items: center; gap: 12px; margin-top: 28px; color: var(--muted); font-size: .73rem; font-weight: 800; }.catalog-pagination .button { min-width: 92px; padding: 9px 12px; }.catalog-pagination .button:disabled { cursor: default; opacity: .42; }.product-description-card p { margin: 0 0 16px; color: var(--muted); font-size: .75rem; line-height: 1.6; white-space: normal; }.product-source-link { font-size: .7rem; }.secondary-specification-grid { padding-top: 16px; }.snapshot-note { border-color: rgba(201,158,43,.32); background: #fffdf6; }.snapshot-note p { color: var(--gold); font-size: 1rem; font-weight: 900; }

.product-open { display: inline; padding: 0; background: transparent; color: inherit; font: inherit; font-weight: inherit; text-align: left; }.product-open:hover { color: var(--green); }.favourite.is-saved, .button-secondary.is-saved { color: var(--red); }.detail-gallery { display: flex; gap: 9px; margin-top: 11px; overflow-x: auto; padding-bottom: 3px; }.detail-gallery button { flex: 0 0 68px; height: 58px; padding: 0; overflow: hidden; border: 2px solid transparent; border-radius: 10px; background: var(--cloud); }.detail-gallery button.active { border-color: var(--green); }.detail-gallery img { width: 100%; height: 100%; object-fit: cover; }

.mobile-bottom-nav { display: none; }.mobile-drawer, .access-dialog { position: relative; width: min(430px, 100%); max-height: min(690px, calc(100vh - 32px)); overflow: auto; border-radius: 20px; background: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.36); }.mobile-drawer { align-self: stretch; width: min(360px, calc(100vw - 28px)); margin-left: 0; padding: 31px 20px 22px; border-radius: 0 20px 20px 0; }.mobile-drawer > img { width: 142px; height: 58px; object-fit: contain; }.mobile-drawer > p { margin: 17px 0 13px; color: var(--muted); font-size: .76rem; }.mobile-drawer nav { display: grid; gap: 3px; margin-bottom: 22px; }.mobile-drawer nav button { display: flex; justify-content: space-between; align-items: center; padding: 14px 4px; border-bottom: 1px solid var(--line); background: transparent; color: var(--ink); font-size: .87rem; font-weight: 800; text-align: left; }.mobile-drawer nav button .icon { color: var(--green); }.access-dialog { padding: 35px; }.access-dialog h2 { margin: 10px 0 13px; font-size: clamp(1.8rem, 7vw, 2.7rem); }.access-dialog p { max-width: 530px; margin-bottom: 22px; color: var(--muted); font-size: .85rem; }.access-actions { display: flex; flex-wrap: wrap; gap: 10px; }.access-actions .button { flex: 1 1 190px; }

.cabinet-subview > .dashboard-stats, .cabinet-subview > .cabinet-panel:not(.cabinet-section-panel) { display: none; }.cabinet-section-panel { margin-top: 10px; }.local-draft-card { padding: 24px; border: 1px solid rgba(201,158,43,.36); border-radius: 14px; background: #fffdf6; }.local-draft-card h3 { margin: 13px 0 8px; }.local-draft-card p { max-width: 690px; color: var(--muted); font-size: .77rem; }.draft-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 19px; }.draft-facts span { display: grid; gap: 4px; padding: 11px; border-radius: 9px; background: #fff; color: var(--muted); font-size: .67rem; }.draft-facts b { color: var(--ink); font-size: .74rem; }.cabinet-section-panel .empty-state { width: 100%; }

/* Re-audited Figma patterns, translated into B2B actions rather than retail decoration. */
.market-pulse-section { padding-bottom: 18px; }.section-note { max-width: 405px; margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.5; }.market-pulse-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 13px; }.market-pulse-card { position: relative; display: grid; min-height: 178px; padding: 18px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: #fff; color: var(--ink); text-align: left; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }.market-pulse-card:hover { transform: translateY(-4px); border-color: var(--green); box-shadow: var(--shadow); }.market-pulse-card > span { color: var(--red); font-size: .66rem; font-weight: 900; }.market-pulse-card b { align-self: end; max-width: 145px; font-size: 1.02rem; letter-spacing: -.04em; }.market-pulse-card small { max-width: 150px; color: var(--muted); font-size: .64rem; line-height: 1.45; }.market-pulse-card .icon { position: absolute; right: 15px; bottom: 15px; color: var(--green); font-size: 1.45rem; }.pulse-catalog { background: #effaf5; }.pulse-rfq { background: #fff8e6; }.pulse-quality { background: #eef5fb; }.pulse-route { background: #fdf1ee; }.pulse-supplier { background: #f4f2fc; }.shelf-section { padding-top: 36px; }

.filters select, .filters input:not([type="checkbox"]):not([type="radio"]) { width: 100%; min-height: 37px; padding: 8px 9px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); font-size: .68rem; }.filters fieldset > label { display: grid; gap: 6px; color: #52645e; font-size: .64rem; font-weight: 800; }.number-range { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; }.number-range label { display: grid; gap: 5px; color: var(--muted); font-size: .61rem; font-weight: 700; }.filter-note { display: block; margin-top: 8px; color: var(--muted); font-size: .59rem; line-height: 1.45; }

.filters .input-shell input { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }.filter-qc { margin: 0; }.advanced-filters { border-top: 1px solid var(--line); }.advanced-filters summary { display: grid; grid-template-columns: minmax(0, 1fr) auto 16px; align-items: center; gap: 8px; padding: 15px 0; cursor: pointer; list-style: none; color: var(--ink); font-size: .7rem; font-weight: 800; }.advanced-filters summary::-webkit-details-marker { display: none; }.advanced-filters summary small { color: var(--muted); font-size: .57rem; font-weight: 700; white-space: nowrap; }.advanced-filters summary .icon { width: 14px; color: var(--green); transition: transform .18s ease; }.advanced-filters[open] summary .icon { transform: rotate(90deg); }.advanced-filters.has-active-filters summary { color: var(--green-deep); }.advanced-filter-body { padding-bottom: 4px; }.advanced-filter-body > fieldset:first-child { border-top: 0; }.filter-unavailable { margin: 0 0 14px; padding: 10px 11px; border-radius: 9px; background: #fff8e6; color: #806516; font-size: .61rem; font-weight: 700; line-height: 1.45; }button:focus-visible, summary:focus-visible { outline: 3px solid rgba(1,146,102,.28); outline-offset: 3px; }
.active-filter-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin: -8px 0 17px; }.active-filter-strip > span { margin-right: 2px; color: var(--muted); font-size: .62rem; font-weight: 800; }.active-filter-chip { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 6px 8px; border: 1px solid rgba(1,146,102,.24); border-radius: 999px; background: #f1faf6; color: var(--green-deep); font-size: .61rem; font-weight: 800; }.active-filter-chip span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.active-filter-chip b { font-size: .87rem; line-height: .65; }

.rfq-item { grid-template-columns: 40px 104px minmax(0, 1fr) 105px 110px 28px; }.rfq-quantity { display: grid; gap: 5px; color: var(--muted); font-size: .61rem; font-weight: 800; }.rfq-quantity input { width: 100%; min-height: 37px; padding: 7px; border: 1px solid var(--line); border-radius: 8px; color: var(--ink); }.company-choice { display: grid; gap: 7px; margin-bottom: 17px; padding: 14px; border: 1px solid rgba(1,146,102,.18); border-radius: 11px; background: #f5fbf8; }.company-choice label { display: grid; gap: 6px; color: #53645e; font-size: .66rem; font-weight: 800; }.company-choice select { width: 100%; min-height: 42px; padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: #fff; }.company-choice small { color: var(--muted); font-size: .62rem; line-height: 1.45; }.button-local-save { margin-top: 14px; min-height: 42px; font-size: .72rem; }.delivery-grid { margin-bottom: 17px; }.payment-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }.payment-option { display: grid; gap: 5px; min-height: 88px; padding: 14px; border: 1px solid var(--line); border-radius: 11px; background: #fff; text-align: left; }.payment-option b { font-size: .76rem; }.payment-option small { color: var(--muted); font-size: .62rem; line-height: 1.4; }.payment-option.active { border-color: var(--green); background: #f1faf6; }.local-company-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.local-company-list article { display: grid; gap: 9px; padding: 19px; border: 1px solid rgba(1,146,102,.18); border-radius: 13px; background: #f8fcfa; }.local-company-list h3, .local-company-list p { margin: 0; }.local-company-list p, .local-company-list small { color: var(--muted); font-size: .69rem; line-height: 1.45; }

@media (max-width: 1120px) {
  :root { --wrapper: min(100% - 40px, 1040px); }
  .header-main { grid-template-columns: 152px auto minmax(160px, 1fr) auto auto; gap: 10px; }.brand { width: 142px; }.main-nav button { padding-inline: 6px; }.main-nav button:nth-child(3), .main-nav button:nth-child(4) { display: none; }
  .hero { grid-template-columns: 1fr .78fr; }.hero-copy { padding-right: 30px; }.hero-lot-card { left: 8%; }.trust-row { grid-template-columns: repeat(2, 1fr); }.trust-row article:nth-child(2) { border-right: 0; }.trust-row article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.category-grid { grid-template-columns: repeat(3, 1fr); }.market-pulse-grid { grid-template-columns: repeat(3, 1fr); }.product-grid { grid-template-columns: repeat(3, 1fr); }.flow-grid, .quality-grid, .onboarding-grid { grid-template-columns: repeat(2, 1fr); }.product-grid.catalog-grid { grid-template-columns: repeat(2, 1fr); }.detail-grid { grid-template-columns: 1fr .88fr; }.detail-summary { padding: 25px; }.supplier-hero .wrapper { grid-template-columns: 1fr 350px; gap: 30px; }.footer-grid { grid-template-columns: 1.3fr repeat(3, 1fr); gap: 22px; }
}

@media (max-width: 820px) {
  .cabinet-mobile-controls { display: block !important; margin-bottom: 10px; }.cabinet-mobile-controls .role-switch { width: 100%; justify-content: center; }.cabinet-mobile-tabs { display: flex !important; gap: 7px; margin: 0 -4px 20px; overflow-x: auto; padding: 3px 4px 8px; scrollbar-width: thin; }.cabinet-mobile-tabs button { flex: 0 0 auto; padding: 8px 10px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--muted); font-size: .63rem; font-weight: 800; white-space: nowrap; }.cabinet-mobile-tabs button.active { border-color: var(--green); background: var(--green); color: #fff; }.toast { bottom: 88px; max-width: calc(100vw - 30px); text-align: center; }
  :root { --wrapper: min(100% - 30px, 720px); }
  .header-strip { display: none; }.header-main { grid-template-columns: 135px 1fr auto; min-height: 67px; }.brand { width: 130px; height: 56px; }.main-nav, .header-action:not(.request-action) { display: none; }.top-search { height: 38px; }.top-search input { font-size: .67rem; }.request-action span { display: none; }.mobile-menu { display: block; }.request-action { padding: 7px; }
  .hero { grid-template-columns: 1fr; }.hero-copy { padding: 64px max(15px, calc((100vw - 720px) / 2)) 52px; }.hero-art { min-height: 375px; }.hero-lot-card { top: 53px; left: 9%; width: 290px; }.flower-one { top: 19px; right: 9%; width: 200px; height: 200px; opacity: .8; }.flower-two { right: 36%; bottom: 25px; }.flower-three { bottom: -20px; }.hero-stats { margin-top: 38px; }
  .trust-row { border-radius: 0; }.section-block { padding-block: 55px; }.category-grid, .market-pulse-grid, .product-grid, .product-grid.catalog-grid { grid-template-columns: repeat(2, 1fr); }.quality-banner { align-items: start; flex-direction: column; padding: 35px; margin-block: 55px; }.insight-grid { grid-template-columns: 1fr; }.map-card, .article-card { min-height: 280px; }.flow-section { padding-block: 60px; }.flow-grid { grid-template-columns: repeat(2, 1fr); }.footer-grid { grid-template-columns: 1.4fr 1fr; padding-top: 70px; }.footer-grid section:first-child { grid-column: 1 / -1; }.footer-bottom { flex-direction: column; }
  .split-heading { align-items: start; flex-direction: column; }.catalog-summary { width: 100%; }.catalog-layout, .order-layout, .checkout-layout { grid-template-columns: 1fr; }.filters { position: static; max-height: none; overflow: visible; }.catalog-toolbar { align-items: start; flex-direction: column; }.sort-button { align-self: end; }.order-summary { position: static; }.detail-grid, .specification-grid { grid-template-columns: 1fr; }.visual-large { min-height: 380px; }.batch-box { grid-template-columns: 1fr; }.batch-box div { border-right: 0; border-bottom: 1px solid #dbe6e1; }.batch-box div:last-child { border-bottom: 0; }.detail-actions { flex-direction: column; }.routes-hero { padding-bottom: 160px; }.route-map { height: 350px; margin-top: -110px; }.route-cards { grid-template-columns: repeat(2, 1fr); }.inspection-panel { grid-template-columns: 1fr; gap: 25px; padding: 36px; }.inspection-card { justify-self: stretch; max-width: none; }.table-head { display: none; }.document-table article { grid-template-columns: 1.2fr 1fr; gap: 9px 20px; }.document-table article span:nth-child(2):before { content: "Кто готовит: "; color: var(--muted); }.document-table article span:nth-child(4):before { content: "Когда: "; color: var(--muted); }
  .cabinet-shell { grid-template-columns: 1fr; }.cabinet-sidebar { display: none; }.cabinet-content { width: var(--wrapper); padding: 42px 0 60px; }.dashboard-stats { grid-template-columns: repeat(2, 1fr); }.dashboard-table > div { grid-template-columns: 105px 1fr auto; }.dashboard-table small { grid-column: 2 / 4; }.cabinet-panel.two-columns { grid-template-columns: 1fr; }.supplier-hero { background: #e8f5ef; }.supplier-hero .wrapper { grid-template-columns: 1fr; }.supplier-checklist { max-width: 430px; }.text-page { padding-top: 55px; }.text-page-grid { grid-template-columns: 1fr; gap: 25px; margin-top: 35px; }
  body { padding-bottom: 76px; }.mobile-bottom-nav { position: fixed; z-index: 25; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(5, 1fr); min-height: 66px; padding: 5px max(10px, calc((100vw - 720px) / 2)); border-top: 1px solid var(--line); background: rgba(255,255,255,.96); box-shadow: 0 -8px 24px rgba(21,35,31,.08); backdrop-filter: blur(10px); }.mobile-bottom-nav button { position: relative; display: grid; place-items: center; gap: 2px; min-width: 0; padding: 3px; background: transparent; color: var(--muted); }.mobile-bottom-nav button.active { color: var(--green-deep); }.mobile-bottom-nav button span { font-size: 1.15rem; line-height: 1; }.mobile-bottom-nav button small { overflow: hidden; max-width: 100%; font-size: .53rem; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }.mobile-bottom-nav button b { position: absolute; top: 1px; right: 17%; display: grid; place-items: center; min-width: 15px; height: 15px; padding: 0 3px; border-radius: 99px; background: var(--red); color: #fff; font-size: .54rem; }
  .modal-backdrop { padding: 14px; }.mobile-drawer { width: min(350px, calc(100vw - 28px)); }.access-dialog { padding: 28px 22px; }.draft-facts { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .rfq-item .rfq-moq { display: grid; grid-column: 3; }.rfq-item .rfq-moq small { max-width: 132px; color: #8a7642; font-size: .56rem; line-height: 1.3; }
  :root { --wrapper: calc(100% - 24px); }
  h1 { letter-spacing: -.055em; }.header-main { grid-template-columns: 118px 1fr auto; gap: 5px; }.brand { width: 114px; }.top-search { padding-inline: 8px; }.top-search input { width: 65px; }.mobile-menu { display: block; }
  .hero-copy { padding-inline: 12px; }.hero-copy h1 { font-size: 2.5rem; }.hero-actions { align-items: start; flex-direction: column; gap: 16px; }.hero-stats { gap: 11px; }.hero-stats div { width: 48%; font-size: .65rem; }.hero-art { min-height: 334px; }.hero-lot-card { left: 12px; top: 38px; width: 270px; padding: 19px; }.flower-one { right: -6%; top: 50px; width: 165px; height: 165px; }.flower-two { right: 20%; bottom: 0; }.flower-three { right: -21%; }
  .trust-row { grid-template-columns: 1fr; }.trust-row article, .trust-row article:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--line); }.trust-row article:last-child { border-bottom: 0; }.section-heading { align-items: start; flex-direction: column; gap: 12px; }.category-grid, .market-pulse-grid, .product-grid, .product-grid.catalog-grid, .flow-grid, .quality-grid, .onboarding-grid { grid-template-columns: 1fr; }.product-card { max-width: 430px; }.product-visual { min-height: 220px; }.category-card { min-height: 135px; }.quality-banner { padding: 28px 23px; }.map-points span { font-size: .55rem; }.map-card { min-height: 335px; }.route-lines { transform: scale(1.12); }.footer-grid { grid-template-columns: 1fr 1fr; gap: 20px; }.footer-grid section:first-child { grid-column: 1 / -1; }.footer-bottom { font-size: .58rem; }.split-heading { align-items: start; flex-direction: column; }.catalog-summary { width: 100%; }.catalog-layout { gap: 16px; }.filters { padding: 15px; }.category-tabs { width: 100%; }.catalog-toolbar { margin-bottom: 15px; }.detail-summary { padding: 20px; }.visual-large { min-height: 290px; }.visual-large i { width: 126px; height: 126px; }.visual-large.tulip i { width: 75px; height: 150px; }.visual-large.monstera i { width: 130px; height: 180px; }.visual-large.anthurium i { width: 107px; height: 150px; }.spec-card { padding: 21px; }.order-main, .form-panel, .order-summary { padding: 20px; }.rfq-item { grid-template-columns: 28px 72px 1fr 25px; gap: 8px; }.rfq-item .rfq-moq { display: none; }.rfq-item .rfq-quantity { grid-column: 3; width: min(132px, 100%); }.rfq-item .remove { grid-column: 4; grid-row: 1; }.rfq-item .product-visual { min-height: 68px; }.form-grid { grid-template-columns: 1fr; }.form-grid label.full { grid-column: auto; }.payment-options, .local-company-list { grid-template-columns: 1fr; }.route-cards { grid-template-columns: 1fr; }.notice-block { align-items: start; flex-direction: column; padding: 25px; }.quality-hero { padding: 65px 0; }.quality-grid article { padding: 21px; }.inspection-panel { padding: 26px 21px; }.document-table article { grid-template-columns: 1fr; gap: 4px; padding: 16px; }.document-table article span:first-child { font-weight: 900; }.cabinet-top { align-items: start; flex-direction: column; }.cabinet-top .button { width: 100%; }.dashboard-stats { grid-template-columns: 1fr 1fr; }.dashboard-table > div { grid-template-columns: 1fr auto; }.dashboard-table small { grid-column: 1 / -1; }.supplier-hero { padding: 65px 0; }.text-page .lead { font-size: .93rem; }.product-modal { grid-template-columns: 1fr; padding: 13px; }.product-modal .product-visual { min-height: 190px; }.modal-actions { flex-direction: column; }.modal-facts { grid-template-columns: 1fr; }
  .rfq-item .rfq-moq { display: grid; grid-column: 3; }.rfq-item .rfq-moq small { max-width: 132px; color: #8a7642; font-size: .56rem; line-height: 1.3; }
  .reference-grid { grid-template-columns: 1fr; margin-block: 27px; }.reference-grid article { min-height: 0; padding: 22px; }.access-actions { flex-direction: column; }.access-actions .button { width: 100%; }
}
