/* 官网共享视觉：中文使用本地思源黑体，英文与数字保留飞花宋体，并以米白和原木细节统一页面。 */
@font-face { font-family:"Xinrong Sans"; src:url("assets/fonts/SourceHanSansSC-Common.woff2") format("woff2"); font-style:normal; font-weight:100 900; font-display:swap; unicode-range:U+2E80-2EFF,U+3000-303F,U+31C0-31EF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF; }
@font-face { font-family:"Xinrong Sans"; src:url("assets/fonts/FlyFlowerSong-Latin.woff2") format("woff2"); font-style:normal; font-weight:400; font-display:swap; unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF; }
:root { --paper:#f7f4ed; --surface:#fffdf8; --ink:#171914; --muted:#6d6d62; --line:#d8d1c3; --wood:#a77849; --wood-dark:#714a2d; --wood-mid:#b98858; --wood-light:#dfc6a4; --wood-wash:#f1e5d3; --olive:#6f7754; --soft:#ede7db; --danger:#963f31; --shadow:0 18px 50px rgba(37,31,23,.09); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"Xinrong Sans","Source Han Sans SC","Noto Sans SC","Microsoft YaHei",sans-serif; letter-spacing:.02em; }
body::before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.09; background-image:var(--home-hero-image,url("assets/hero-product-board.png")); background-size:cover; filter:grayscale(1); z-index:-2; }
body::after { content:""; position:fixed; inset:0; background:rgba(247,244,237,.94); pointer-events:none; z-index:-1; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
button { cursor:pointer; }
img { display:block; max-width:100%; }
.site-header { position:sticky; top:0; z-index:30; min-height:86px; padding:14px max(28px,calc((100vw - 1320px)/2)); display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:34px; background:rgba(247,244,237,.96); border-bottom:1px solid var(--ink); backdrop-filter:blur(15px); }
.brand { display:flex; flex-direction:column; line-height:1; }
.brand strong { font-size:25px; letter-spacing:.12em; }
.brand small { margin-top:9px; color:var(--muted); font-size:12px; letter-spacing:.08em; }
.main-nav { display:flex; justify-content:center; gap:28px; font-size:15px; }
.main-nav a { padding:9px 0; border-bottom:2px solid transparent; }
.main-nav a:hover { border-color:var(--ink); }
.header-actions { display:flex; align-items:center; gap:12px; }
.phone-link { display:flex; align-items:center; gap:8px; font-size:15px; white-space:nowrap; }
.header-customer-service { position:relative; }
.customer-service-trigger { min-height:44px; padding:0 13px; display:flex; align-items:center; gap:7px; color:var(--ink); border:1px solid var(--ink); background:var(--surface); }
.customer-service-trigger i { font-size:22px; }
.customer-service-trigger[aria-expanded="true"] { color:#fff; background:var(--wood-dark); }
.customer-service-note[hidden] { display:none; }
.customer-service-note { position:absolute; top:62px; right:-68px; z-index:90; width:370px; padding:22px; color:var(--ink); border:1px solid #b38c45; background:#fff3c8; box-shadow:0 22px 55px rgba(51,39,21,.3); transform:rotate(-.35deg); }
.customer-service-note::before { content:""; position:absolute; top:-10px; left:54%; width:74px; height:22px; opacity:.7; background:rgba(224,202,148,.9); transform:translateX(-50%) rotate(1deg); }
.customer-service-note::after { content:""; position:absolute; right:-1px; bottom:-1px; border-width:0 0 22px 22px; border-style:solid; border-color:transparent transparent var(--wood) transparent; }
.customer-service-note-heading { padding-bottom:14px; border-bottom:1px dashed rgba(113,74,45,.45); }
.customer-service-note-heading>span { display:flex; align-items:center; gap:6px; color:var(--wood-dark); font-size:11px; letter-spacing:.12em; }
.customer-service-note-heading>strong { margin-top:8px; display:block; font-size:23px; }
.customer-service-note-heading>p { margin:5px 0 0; color:var(--muted); font-size:13px; line-height:1.6; }
.customer-service-list { margin-top:10px; display:grid; }
.customer-service-row { min-width:0; padding:12px 4px; display:grid; grid-template-columns:30px minmax(0,1fr) auto 22px; align-items:center; gap:10px; border-bottom:1px solid rgba(113,74,45,.18); }
.customer-service-row:last-child { border-bottom:0; }
.customer-service-row:hover,.customer-service-row:focus-visible { outline:0; background:rgba(255,255,255,.45); }
.customer-service-row>i:first-child { width:30px; height:30px; display:grid; place-items:center; color:#fff; border-radius:50%; background:var(--wood-dark); }
.customer-service-row>span { min-width:0; display:grid; gap:2px; }
.customer-service-row b { overflow:hidden; font-size:15px; text-overflow:ellipsis; white-space:nowrap; }
.customer-service-row small { color:var(--muted); font-size:10px; }
.customer-service-row strong { color:var(--wood-dark); font-size:14px; white-space:nowrap; }
.customer-service-row>i:last-child { color:var(--wood-dark); font-size:19px; }
.customer-service-loading { min-height:150px; display:grid; place-items:center; color:var(--muted); text-align:center; }
.cart-trigger { display:flex; align-items:center; gap:9px; min-height:44px; padding:0 16px; color:#fff; background:var(--ink); border:1px solid var(--ink); }
.cart-trigger b { min-width:22px; height:22px; padding:0 6px; display:grid; place-items:center; color:var(--ink); background:#fff; border-radius:50%; font-size:12px; }
.menu-button { display:none; border:0; background:none; font-size:25px; }
main { overflow:hidden; }
.hero,.about-section,.catalog-section,.announcement-section,.delivery-section,.contact-section { width:min(1320px,calc(100% - 56px)); margin:0 auto; }
.hero { min-height:680px; display:grid; grid-template-columns:1fr 1.02fr; align-items:center; gap:78px; padding:74px 0; border-bottom:1px solid var(--ink); }
.kicker { margin:0 0 18px; color:var(--olive); font-size:13px; letter-spacing:.18em; text-transform:uppercase; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:18px; font-size:clamp(48px,4.7vw,68px); line-height:1.08; letter-spacing:0; }
h2 { margin-bottom:22px; font-size:clamp(36px,4vw,56px); line-height:1.14; }
.hero-copy>h1,.about-copy>h2,.section-heading h2,.contact-section h2 { white-space:nowrap; }
.hero-copy>.hero-slogan { margin-bottom:24px; color:var(--wood-dark); font-size:25px; letter-spacing:.12em; }
.hero-copy>p:not(.kicker):not(.hero-slogan) { max-width:580px; color:#4f5148; font-size:19px; line-height:1.85; }
.hero-actions { margin-top:36px; display:flex; gap:12px; flex-wrap:wrap; }
.button { min-height:48px; padding:0 20px; display:inline-flex; align-items:center; justify-content:center; gap:10px; border:1px solid var(--ink); }
.button-primary { color:#fff; background:var(--ink); }
.button-primary:hover { background:#30322b; }
.button-secondary { background:transparent; }
.hero-points { margin:34px 0 0; padding:0; display:flex; gap:28px; list-style:none; color:var(--muted); }
.hero-points li { display:flex; align-items:center; gap:7px; }
.hero-image { margin:0; height:520px; overflow:hidden; box-shadow:var(--shadow); }
.hero-image img { width:100%; height:100%; object-fit:cover; }
.about-section { position:relative; isolation:isolate; padding:110px 28px; display:grid; grid-template-columns:1fr .9fr; gap:70px; border-bottom:1px solid var(--ink); }
.about-section::before { content:""; position:absolute; inset:48px -18px; z-index:-1; border:1px solid rgba(167,120,73,.26); background:linear-gradient(135deg,rgba(255,253,248,.94),rgba(241,229,211,.72)); box-shadow:0 24px 60px rgba(84,55,31,.08); }
.about-copy { position:relative; padding-left:26px; }
.about-copy::before { content:""; position:absolute; top:3px; bottom:3px; left:0; width:8px; background:repeating-linear-gradient(90deg,var(--wood-dark) 0 1px,var(--wood-mid) 1px 4px,var(--wood-light) 4px 6px); box-shadow:2px 0 10px rgba(113,74,45,.18); }
.about-copy>p:not(.kicker) { color:#55564e; font-size:17px; line-height:1.9; }
.about-copy>.section-subtitle { margin:-10px 0 24px; color:var(--wood-dark); font-size:22px; letter-spacing:.08em; }
.business-list { margin-top:32px; display:flex; flex-wrap:wrap; gap:10px; }
.business-list span { padding:10px 14px; border:1px solid rgba(167,120,73,.38); background:linear-gradient(135deg,rgba(255,253,248,.96),rgba(233,213,187,.72)); }
.warehouse-image { margin:0; min-height:470px; padding:10px; background:repeating-linear-gradient(96deg,var(--wood-dark) 0 2px,var(--wood-mid) 2px 7px,var(--wood-light) 7px 10px); box-shadow:0 18px 38px rgba(84,55,31,.16); }
.warehouse-image img { width:100%; height:100%; object-fit:cover; }
.partner-endorsement { position:relative; grid-column:1/-1; min-height:590px; padding:46px 38px; display:grid; grid-template-columns:245px minmax(0,1fr); gap:26px; align-items:center; overflow:hidden; border:1px solid rgba(167,120,73,.38); background:linear-gradient(135deg,rgba(255,253,248,.96),rgba(237,231,219,.82)); box-shadow:0 18px 42px rgba(84,55,31,.1); }
.partner-endorsement::before,.partner-endorsement::after { content:""; position:absolute; z-index:0; width:230px; height:120px; opacity:.58; pointer-events:none; }
.partner-endorsement::before { left:165px; bottom:86px; border-bottom:3px solid var(--olive); border-left:3px solid var(--olive); border-radius:0 0 0 90px; }
.partner-endorsement::after { top:70px; right:-42px; border-top:3px solid var(--wood); border-right:3px solid var(--wood); border-radius:0 90px 0 0; }
.endorsement-title { position:relative; z-index:2; padding-right:22px; }
.endorsement-title small { color:var(--olive); letter-spacing:.18em; }
.endorsement-title strong { margin-top:10px; display:block; font-size:29px; line-height:1.35; white-space:nowrap; }
.endorsement-title p { margin:10px 0 0; color:var(--muted); font-size:13px; line-height:1.7; }
.endorsement-title span { width:86px; height:2px; margin-top:24px; display:block; background:var(--wood); }
.partner-wall-message { position:absolute; z-index:2; top:34px; right:48px; margin:0; font-size:22px; letter-spacing:.18em; }
.partner-marks { position:relative; z-index:1; width:min(100%,850px); min-width:0; min-height:500px; margin:54px auto 0; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); grid-template-rows:repeat(3,166px); align-content:center; }
.partner-card { min-width:0; min-height:0; height:184px; margin:0 4px; padding:25px 22px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:var(--ink); border:0; clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%); background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(243,238,228,.96)); filter:drop-shadow(0 11px 10px rgba(62,48,35,.15)); text-align:center; transition:transform .2s ease,filter .2s ease; }
.partner-card:nth-child(1) { grid-column:2/4; grid-row:1; }
.partner-card:nth-child(2) { grid-column:4/6; grid-row:1; }
.partner-card:nth-child(3) { grid-column:6/8; grid-row:1; }
.partner-card:nth-child(4) { grid-column:1/3; grid-row:2; transform:translateY(-30px); }
.partner-card:nth-child(5) { grid-column:3/5; grid-row:2; transform:translateY(-30px); }
.partner-card:nth-child(6) { grid-column:5/7; grid-row:2; transform:translateY(-30px); }
.partner-card:nth-child(7) { grid-column:7/9; grid-row:2; transform:translateY(-30px); }
.partner-card:nth-child(8) { grid-column:4/6; grid-row:3; transform:translateY(-60px); }
.partner-card:hover { z-index:3; transform:translateY(-5px) scale(1.025); filter:drop-shadow(0 16px 14px rgba(62,48,35,.22)); }
.partner-card:nth-child(n+4):nth-child(-n+7):hover { transform:translateY(-35px) scale(1.025); }
.partner-card:nth-child(8):hover { transform:translateY(-65px) scale(1.025); }
.partner-card strong { font-size:15px; font-weight:500; letter-spacing:.06em; }
.partner-card small { color:var(--muted); font-size:11px; line-height:1.45; }
.partner-logo-frame { width:100%; height:55px; padding:5px 8px; display:grid; place-items:center; overflow:hidden; }
.partner-logo-frame img { display:block; max-width:150px; max-height:52px; object-fit:contain; }
.partner-card--wide .partner-logo-frame img { width:100%; }
.partner-card--inverse .partner-logo-frame { background:#4f5148; }
.partner-card--inverse .partner-logo-frame img { width:100%; }
.partner-card--square .partner-logo-frame { height:64px; padding:0; }
.partner-card--square .partner-logo-frame img { width:64px; height:64px; }
.partner-wordmark { color:var(--wood-dark); font-size:29px; line-height:1; letter-spacing:.16em; }
.partner-card--other i,.partner-card--invite i { font-size:34px; }
.partner-card--other { background:linear-gradient(145deg,rgba(252,248,239,.98),rgba(223,210,191,.96)); }
.partner-card--invite { color:#fff; background:linear-gradient(145deg,var(--wood-dark),#8a6240); }
.partner-card--invite small { color:rgba(255,255,255,.78); }
.proof-grid { grid-column:1/-1; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid rgba(167,120,73,.32); background:linear-gradient(90deg,rgba(255,253,248,.82),rgba(241,229,211,.62)); }
.proof-grid div { padding:26px; border-right:1px solid var(--line); }
.proof-grid div:last-child { border-right:0; }
.proof-grid strong { display:block; color:var(--wood-dark); font-size:43px; }
.proof-grid strong.proof-word { padding-top:8px; font-size:31px; }
.proof-grid strong small { margin-left:5px; font-size:16px; }
.proof-grid span { color:var(--muted); }
.catalog-section { padding:110px 0; border-bottom:1px solid var(--ink); }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:34px; }
.section-heading h2 { margin-bottom:10px; }
.section-heading p:last-child { margin-bottom:0; color:var(--muted); line-height:1.7; }
.section-heading.compact { align-items:center; }
.search-box { width:min(410px,100%); min-height:50px; padding:0 15px; display:flex; align-items:center; gap:10px; background:var(--surface); border:1px solid var(--ink); }
.search-box input { width:100%; border:0; outline:0; background:none; }
.search-box button { border:0; background:none; }
.price-status { min-height:70px; padding:10px 14px; display:flex; align-items:center; gap:22px; border:1px solid var(--line); border-bottom:0; background:rgba(255,253,248,.75); }
.price-meta { flex:0 0 auto; display:grid; gap:5px; }
.price-meta span { font-size:14px; white-space:nowrap; }
.price-meta span i { color:var(--olive); }
.price-meta b { color:var(--muted); font-size:12px; font-weight:400; white-space:nowrap; }
.use-case-selector { min-width:0; flex:1; display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.use-case-selector>span { flex:0 0 auto; color:var(--muted); font-size:13px; white-space:nowrap; }
#useCaseList { min-width:0; display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; }
#useCaseList::-webkit-scrollbar { display:none; }
.use-case-button { flex:0 0 auto; min-height:38px; padding:0 13px; border:1px solid var(--line); color:var(--muted); background:var(--surface); white-space:nowrap; transition:color .18s,background .18s,border-color .18s; }
.use-case-button:hover { color:var(--ink); border-color:var(--ink); }
.use-case-button.active { color:#fff; border-color:var(--ink); background:var(--ink); }
.catalog-layout { height:650px; display:grid; grid-template-columns:240px 1fr; border:1px solid var(--ink); background:rgba(255,253,248,.82); box-shadow:var(--shadow); overflow:hidden; }
.category-panel { padding:24px 15px; border-right:1px solid var(--line); overflow:auto; }
.category-panel h3 { padding:0 10px 15px; margin-bottom:10px; border-bottom:1px solid var(--line); }
#categoryList { display:grid; gap:4px; }
.category-button { width:100%; padding:11px 10px; display:flex; justify-content:space-between; border:0; background:transparent; text-align:left; color:var(--muted); }
.category-button.active,.category-button:hover { color:var(--ink); background:var(--soft); }
.category-button b { font-size:12px; }
.product-panel { min-width:0; min-height:0; height:100%; display:grid; grid-template-rows:52px minmax(0,1fr); position:relative; overflow:hidden; }
.product-table-head,.product-row { display:grid; grid-template-columns:minmax(340px,1.5fr) minmax(130px,.7fr) minmax(140px,.65fr) 90px; align-items:center; }
.product-table-head { padding:0 18px; color:var(--muted); border-bottom:1px solid var(--line); font-size:13px; }
.product-scroll { min-height:0; overflow-y:auto; scrollbar-color:var(--ink) var(--soft); scrollbar-width:thin; }
.product-row { min-height:104px; padding:12px 18px; border-bottom:1px solid var(--line); }
.product-row:hover { background:#f0ece3; }
.product-row.is-unavailable { opacity:.58; }
.product-main { min-width:0; display:flex; align-items:center; gap:14px; }
.product-main img { width:72px; height:72px; object-fit:cover; background:var(--soft); }
.product-main div { min-width:0; }
.product-main small { color:var(--olive); font-size:12px; }
.product-meta { display:flex; align-items:center; gap:8px; overflow:hidden; }
.product-meta small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.recommendation-badge { flex:0 0 auto; padding:3px 6px; display:inline-flex; align-items:center; gap:3px; color:var(--wood-dark); border:1px solid rgba(167,120,73,.38); background:var(--wood-wash); font-size:11px; line-height:1; }
.product-main h3 { margin:5px 0 0; font-size:18px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product-main p { margin:5px 0 0; color:var(--muted); font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.product-spec { color:var(--muted); }
.product-price strong { display:block; font-size:22px; }
.product-price small { color:var(--muted); }
.product-price em { margin-top:5px; display:block; color:var(--olive); font-size:11px; font-style:normal; }
.product-actions { display:flex; gap:7px; }
.product-actions button { width:38px; height:38px; border:1px solid var(--ink); background:transparent; }
.product-actions button:last-child { color:#fff; background:var(--ink); }
.product-actions button:disabled { cursor:not-allowed; opacity:.4; }
.home-catalog .product-table-head,.home-catalog .product-row { grid-template-columns:minmax(360px,1.7fr) minmax(150px,.75fr) minmax(180px,.65fr); }
.showcase-availability strong,.showcase-availability small { display:block; }
.showcase-availability strong { color:var(--olive); font-size:17px; }
.showcase-availability small { margin-top:6px; color:var(--muted); font-size:11px; }
.home-order-callout { margin-top:22px; padding:24px 26px; display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:20px; color:#fff; background:linear-gradient(110deg,var(--wood-dark),var(--ink)); box-shadow:var(--shadow); }
.home-order-callout>i { font-size:38px; }
.home-order-callout strong { font-size:20px; }
.home-order-callout p { margin:6px 0 0; color:rgba(255,255,255,.76); }
.home-order-callout a { min-height:50px; padding:0 20px; display:flex; align-items:center; gap:10px; color:var(--ink); background:var(--surface); }
.announcement-section { padding:76px 40px 82px; border-top:1px solid var(--line); border-bottom:1px solid var(--ink); background:linear-gradient(145deg,rgba(255,253,248,.96),rgba(241,229,211,.72)); }
.announcement-heading { margin-bottom:28px; display:flex; align-items:flex-end; justify-content:space-between; gap:30px; }
.announcement-heading .kicker { margin-bottom:12px; }
.announcement-heading h2 { margin:0; font-size:clamp(34px,3.5vw,50px); }
.announcement-heading>div>p:last-child { max-width:720px; margin:12px 0 0; color:var(--muted); line-height:1.7; }
.announcement-heading>span { color:var(--muted); white-space:nowrap; }
.announcement-title-line { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
#announcementNewBadge:not([hidden]) { min-height:34px; padding:0 13px; display:inline-flex; align-items:center; gap:7px; color:#fff; background:var(--danger); font-size:13px; letter-spacing:.04em; }
.announcement-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.announcement-card { min-width:0; display:grid; overflow:hidden; border:1px solid rgba(128,91,55,.34); background:rgba(255,253,248,.9); box-shadow:0 12px 28px rgba(84,55,31,.07); }
.announcement-card.is-latest { grid-column:1/-1; grid-template-columns:minmax(0,1fr) minmax(340px,.82fr); border-color:var(--wood-dark); }
.announcement-card.is-latest:not(:has(.announcement-media)) { grid-template-columns:1fr; }
.announcement-copy { min-width:0; padding:30px; }
.announcement-meta { margin-bottom:18px; display:flex; align-items:center; justify-content:space-between; gap:18px; color:var(--muted); font-size:12px; }
.announcement-meta span { color:var(--wood-dark); letter-spacing:.12em; }
.announcement-card h3 { margin-bottom:14px; font-size:25px; line-height:1.35; }
.announcement-card.is-latest h3 { font-size:32px; }
.announcement-card p { margin:0; color:var(--muted); line-height:1.85; white-space:pre-line; overflow-wrap:anywhere; }
.announcement-link { margin-top:22px; min-height:42px; padding:0 15px; display:inline-flex; align-items:center; gap:8px; color:#fff; background:var(--ink); }
.announcement-media { min-width:0; min-height:260px; display:grid; background:#191a17; }
.announcement-media.is-multiple { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px; }
.announcement-media img,.announcement-media video { width:100%; height:100%; min-height:220px; max-height:380px; display:block; object-fit:cover; background:#191a17; }
.announcement-media.is-multiple img,.announcement-media.is-multiple video { min-height:170px; max-height:230px; }
.announcement-empty { min-height:150px; grid-column:1/-1; padding:28px; display:flex; align-items:center; justify-content:center; gap:18px; color:var(--muted); border:1px dashed var(--line); background:rgba(255,253,248,.56); text-align:left; }
.announcement-empty i { font-size:34px; color:var(--wood-dark); }
.announcement-empty b { display:block; color:var(--ink); font-size:18px; }
.announcement-empty p { margin:6px 0 0; }
.announcement-more { min-height:44px; margin:22px auto 0; padding:0 18px; display:flex; align-items:center; gap:8px; color:var(--ink); border:1px solid var(--ink); background:transparent; }
.announcement-more[hidden] { display:none; }
.home-order-dock { position:fixed; right:28px; bottom:24px; z-index:65; min-width:270px; min-height:68px; padding:11px 18px 11px 22px; display:flex; align-items:center; justify-content:space-between; gap:24px; color:#fff; background:var(--ink); box-shadow:0 18px 44px rgba(23,25,20,.28); }
.home-order-dock span { display:grid; gap:3px; }
.home-order-dock small { color:rgba(255,255,255,.66); }
.home-order-dock strong { font-size:22px; }
.home-order-dock>i { font-size:25px; }
.home-with-order-dock { padding-bottom:92px; }
.empty-state { position:absolute; inset:52px 0 0; place-content:center; text-align:center; background:var(--surface); }
.empty-state:not([hidden]) { display:grid; }
.empty-state i { font-size:38px; }
.empty-state button { border:0; background:none; text-decoration:underline; }
.delivery-section { position:relative; isolation:isolate; padding:100px 28px; border-bottom:1px solid var(--ink); }
.delivery-section::before { content:""; position:absolute; inset:45px -18px; z-index:-1; background:linear-gradient(120deg,rgba(241,229,211,.72),rgba(255,253,248,.72)); border-top:1px solid rgba(167,120,73,.3); border-bottom:1px solid rgba(167,120,73,.3); }
.delivery-rules { margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:14px; list-style:none; }
.delivery-rules li { position:relative; min-height:210px; padding:58px 28px 34px; overflow:hidden; border:1px solid rgba(167,120,73,.38); background:linear-gradient(150deg,rgba(255,253,248,.98),rgba(238,222,200,.86)); box-shadow:0 14px 28px rgba(84,55,31,.08); }
.delivery-rules li::before { content:counter(list-item,decimal-leading-zero); position:absolute; top:20px; right:24px; color:rgba(113,74,45,.46); font-size:22px; letter-spacing:.08em; }
.delivery-rules li::after { content:""; position:absolute; right:0; bottom:0; left:0; height:7px; background:repeating-linear-gradient(90deg,var(--wood-dark) 0 2px,var(--wood-mid) 2px 8px,var(--wood-light) 8px 12px); }
.delivery-rules b { display:block; margin-bottom:12px; font-size:20px; }
.delivery-rules span { color:var(--muted); line-height:1.7; }
.contact-section { padding:110px 0; display:grid; grid-template-columns:1fr .8fr; gap:80px; }
.contact-section>div>p:not(.kicker) { color:var(--muted); }
.contact-phone { display:inline-block; margin-top:5px; font-size:clamp(38px,5vw,70px); border-bottom:3px solid var(--ink); }
.contact-section address { position:relative; padding:42px 35px 35px; overflow:hidden; border:1px solid var(--wood-dark); background:linear-gradient(145deg,rgba(255,253,248,.96),rgba(237,218,191,.82)); box-shadow:0 18px 38px rgba(84,55,31,.1); font-style:normal; }
.contact-section address::before { content:""; position:absolute; top:0; right:0; left:0; height:9px; background:repeating-linear-gradient(90deg,var(--wood-dark) 0 2px,var(--wood-mid) 2px 9px,var(--wood-light) 9px 13px); }
.contact-section address span { color:var(--muted); }
.contact-section address strong { display:block; margin:20px 0 12px; font-size:27px; }
.contact-section address p { color:var(--muted); line-height:1.8; }
.button-light { margin-top:20px; }
footer { min-height:120px; padding:28px max(28px,calc((100vw - 1320px)/2)); display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--ink); background:linear-gradient(90deg,rgba(255,253,248,.94),rgba(241,229,211,.82)); }
footer>div:first-child { display:flex; flex-direction:column; }
footer small,footer p { color:var(--muted); }
footer>div:last-child { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 20px; }
footer a { border-bottom:1px solid var(--ink); }
footer .icp-record { color:var(--muted); white-space:nowrap; }
.product-dialog { width:min(920px,calc(100% - 34px)); padding:0; border:1px solid var(--ink); background:var(--surface); box-shadow:var(--shadow); }
.product-dialog::backdrop { background:rgba(23,25,20,.62); }
.bulk-order-dialog { width:min(480px,calc(100% - 34px)); padding:0; color:var(--ink); border:1px solid var(--ink); background:var(--surface); box-shadow:0 26px 70px rgba(23,25,20,.3); }
.bulk-order-dialog::backdrop { background:rgba(23,25,20,.62); backdrop-filter:blur(2px); }
.bulk-order-dialog-card { padding:40px 34px 34px; text-align:center; }
.bulk-order-dialog-card>i { width:64px; height:64px; margin:0 auto 18px; display:grid; place-items:center; color:#fff; border-radius:50%; background:var(--wood-dark); font-size:36px; }
.bulk-order-dialog-card .kicker { margin-bottom:9px; }
.bulk-order-dialog-card h2 { margin-bottom:14px; font-size:31px; line-height:1.35; white-space:normal; }
.bulk-order-dialog-card>p:not(.kicker) { margin-bottom:24px; color:var(--muted); line-height:1.75; }
.bulk-order-dialog-card .button { width:100%; }
.dialog-close { position:absolute; top:16px; right:16px; z-index:2; width:40px; height:40px; border:1px solid var(--ink); background:var(--surface); }
.product-detail { display:grid; grid-template-columns:1fr 1fr; }
.product-detail>img { width:100%; height:100%; min-height:500px; object-fit:cover; }
.product-detail-copy { padding:55px; }
.product-detail-copy>small { color:var(--olive); }
.product-detail-copy h2 { margin-top:12px; }
.product-detail-copy p,.product-detail-copy li { color:var(--muted); line-height:1.7; }
.product-detail-copy ul { padding-left:18px; }
.detail-price { margin:28px 0; font-size:34px; }
.detail-price small { font-size:14px; color:var(--muted); }
.toast { position:fixed; right:28px; bottom:28px; z-index:80; padding:14px 20px; color:#fff; background:var(--ink); transform:translateY(20px); opacity:0; pointer-events:none; transition:.2s; }
.toast.show { transform:none; opacity:1; }
.privacy-page { width:min(900px,calc(100% - 40px)); margin:0 auto; padding:80px 0 110px; }
.privacy-page>article { padding:54px 60px; border:1px solid var(--wood-dark); background:rgba(255,253,248,.9); box-shadow:var(--shadow); }
.privacy-page h1 { margin:10px 0 20px; }
.privacy-lead { padding:20px 22px; color:var(--wood-dark); border-left:5px solid var(--wood-dark); background:var(--wood-wash); font-size:18px; }
.privacy-page section { padding:26px 0; border-bottom:1px solid var(--line); }
.privacy-page section h2 { margin-bottom:10px; font-size:26px; }
.privacy-page section p { margin:0; color:var(--muted); line-height:1.9; }
.privacy-page section a { color:var(--wood-dark); border-bottom:1px solid currentColor; }
.privacy-date { margin:26px 0; color:var(--muted); }
.privacy-actions { display:flex; gap:12px; }
.location-consent { width:min(680px,calc(100% - 34px)); padding:0; color:var(--ink); border:1px solid var(--ink); background:var(--surface); box-shadow:0 28px 80px rgba(23,25,20,.28); }
.location-consent::backdrop { background:rgba(23,25,20,.58); backdrop-filter:blur(2px); }
.location-consent[open] { display:grid; grid-template-columns:112px 1fr; }
.location-consent-icon { display:grid; place-items:start center; padding-top:44px; color:#fff; background:var(--ink); }
.location-consent-icon i { font-size:42px; }
.location-consent-copy { padding:40px; }
.location-consent-copy h2 { margin:8px 0 16px; font-size:32px; }
.location-consent-copy>p:not(.kicker) { margin:0; color:var(--muted); line-height:1.75; }
.location-consent-copy .location-privacy { margin-top:12px; padding-top:12px; border-top:1px solid var(--line); font-size:13px; }
.location-consent-copy .location-privacy a { color:var(--wood-dark); border-bottom:1px solid currentColor; }
.location-message { min-height:22px; margin-top:10px; display:block; color:var(--danger); }
.location-actions { margin-top:22px; display:flex; align-items:center; gap:18px; }
.location-later { padding:10px 0; color:var(--muted); border:0; border-bottom:1px solid var(--muted); background:none; }
.location-spinner { animation:location-spin .9s linear infinite; }
@keyframes location-spin { to { transform:rotate(360deg); } }
@media (max-width:1050px) {
  .site-header { grid-template-columns:auto auto 1fr; }
  .menu-button { display:block; }
  .main-nav { position:absolute; top:85px; left:0; right:0; padding:20px 28px; display:none; flex-wrap:wrap; justify-content:flex-start; background:var(--surface); border-bottom:1px solid var(--ink); }
  .main-nav.open { display:flex; }
  .header-actions { justify-self:end; }
  .hero { grid-template-columns:1fr; gap:40px; }
  .hero-image { height:460px; }
  .about-section { grid-template-columns:1fr; }
  .partner-endorsement { min-height:auto; padding:40px 34px; grid-template-columns:1fr; gap:20px; }
  .endorsement-title { padding:0 0 22px; border-bottom:1px solid var(--line); }
  .partner-marks { margin-top:38px; }
  .proof-grid { grid-template-columns:repeat(2,1fr); }
  .catalog-layout { grid-template-columns:190px 1fr; }
  .product-table-head,.product-row { grid-template-columns:minmax(280px,1.4fr) minmax(120px,.65fr) 140px 82px; }
  .home-catalog .product-table-head,.home-catalog .product-row { grid-template-columns:minmax(300px,1.6fr) minmax(130px,.7fr) minmax(160px,.65fr); }
}
@media (max-width:760px) {
  body { letter-spacing:.025em; }
  .location-consent[open] { grid-template-columns:1fr; }
  .location-consent-icon { min-height:64px; padding:0; place-items:center; }
  .location-consent-copy { padding:26px 22px; }
  .location-consent-copy h2 { font-size:27px; }
  .location-actions { align-items:stretch; flex-direction:column; gap:8px; }
  .site-header { min-height:76px; padding:13px 22px; gap:14px; }
  .brand strong { font-size:21px; }
  .brand small,.phone-link span,.customer-service-trigger span,.cart-trigger span { display:none; }
  .phone-link,.cart-trigger { width:42px; height:42px; padding:0; justify-content:center; }
  .customer-service-trigger { width:42px; height:42px; padding:0; justify-content:center; }
  .customer-service-note { top:58px; right:-56px; width:min(360px,calc(100vw - 28px)); max-height:calc(100vh - 96px); padding:20px 18px; overflow:auto; transform:none; }
  .cart-trigger { position:relative; }
  .cart-trigger b { position:absolute; top:-8px; right:-8px; }
  .main-nav { top:75px; padding:22px 24px; gap:18px 24px; }
  .hero,.about-section,.catalog-section,.announcement-section,.delivery-section,.contact-section { width:calc(100% - 48px); }
  .hero { min-height:auto; padding:72px 0 80px; gap:48px; }
  h1 { font-size:clamp(28px,8.8vw,40px); }
  h2 { font-size:clamp(28px,8vw,34px); }
  .hero-copy>.hero-slogan { font-size:16px; line-height:1.6; letter-spacing:.05em; }
  .hero-copy>p:not(.kicker):not(.hero-slogan) { font-size:17px; line-height:1.9; }
  .hero-actions { margin-top:32px; gap:14px; }
  .button { min-height:50px; padding:0 19px; }
  .hero-image { height:290px; }
  .hero-points { flex-wrap:wrap; gap:16px 20px; line-height:1.6; }
  .about-section,.catalog-section { padding:84px 0; }
  .about-section { gap:46px; }
  .about-section::before { inset:34px -5px; }
  .about-copy { padding:0 0 0 20px; }
  .about-copy>p:not(.kicker) { font-size:16px; line-height:1.95; }
  .business-list { margin-top:28px; gap:9px; }
  .business-list span { padding:9px 12px; }
  .warehouse-image { min-height:285px; padding:7px; }
  .partner-endorsement { min-height:auto; padding:34px 18px 42px; gap:28px; }
  .partner-endorsement::before,.partner-endorsement::after,.partner-wall-message { display:none; }
  .endorsement-title { padding:0 2px 24px; }
  .endorsement-title strong { font-size:26px; }
  .endorsement-title span { margin-top:20px; }
  .partner-marks { width:min(100%,310px); min-height:0; margin:0 auto; padding-bottom:34px; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none; grid-auto-rows:auto; gap:8px 10px; }
  .partner-card,.partner-card:nth-child(n) { grid-column:auto; grid-row:auto; width:100%; height:auto; aspect-ratio:1.08; margin:0; padding:20px 15px; transform:none; }
  .partner-card:nth-child(even) { transform:translateY(34px); }
  .partner-card:hover,.partner-card:nth-child(n):hover { transform:none; }
  .partner-card strong { font-size:13px; }
  .partner-card small { font-size:10px; }
  .partner-logo-frame { height:48px; padding:4px 7px; }
  .partner-logo-frame img { max-width:105px; max-height:46px; }
  .partner-card--square .partner-logo-frame { height:54px; }
  .partner-card--square .partner-logo-frame img { width:54px; height:54px; }
  .partner-wordmark { font-size:25px; }
  .proof-grid { grid-template-columns:1fr 1fr; gap:10px; border:0; background:transparent; }
  .proof-grid div { padding:22px 14px; border:1px solid var(--line); background:rgba(255,253,248,.76); }
  .proof-grid div:last-child { border-right:1px solid var(--line); }
  .proof-grid strong { font-size:31px; }
  .proof-grid strong.proof-word { padding-top:5px; font-size:23px; }
  .section-heading { align-items:stretch; flex-direction:column; gap:26px; margin-bottom:38px; }
  .section-heading p:last-child { line-height:1.85; }
  .search-box { width:100%; }
  .price-status { align-items:stretch; flex-direction:column; gap:13px; padding:16px 14px; }
  .price-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .price-meta b { overflow:hidden; text-overflow:ellipsis; }
  .use-case-selector { display:block; }
  .use-case-selector>span { display:block; margin:0 0 7px 2px; }
  #useCaseList { padding-bottom:1px; }
  .use-case-button { min-height:36px; padding:0 12px; }
  .catalog-layout { height:680px; grid-template-columns:1fr; grid-template-rows:auto 1fr; }
  .category-panel { padding:10px; border-right:0; border-bottom:1px solid var(--line); overflow-x:auto; }
  .category-panel h3 { display:none; }
  #categoryList { display:flex; width:max-content; }
  .category-button { width:auto; gap:10px; white-space:nowrap; }
  .product-panel { min-height:0; grid-template-rows:minmax(0,1fr); }
  .product-table-head { display:none; }
  .product-row { min-height:142px; grid-template-columns:1fr auto; gap:12px; padding:16px; }
  .product-main { grid-column:1/-1; }
  .product-main img { width:68px; height:68px; }
  .product-spec { padding-left:82px; font-size:13px; }
  .product-price { text-align:right; }
  .product-actions { grid-column:1/-1; justify-content:flex-end; }
  .home-catalog .product-row { min-height:136px; grid-template-columns:1fr auto; gap:10px; }
  .home-catalog .product-main { grid-column:1/-1; }
  .home-catalog .product-spec { padding-left:82px; }
  .home-catalog .showcase-availability { text-align:right; }
  .home-order-callout { margin-top:22px; grid-template-columns:auto 1fr; padding:24px 20px; gap:15px; }
  .home-order-callout a { grid-column:1/-1; justify-content:center; }
  .announcement-section { padding:68px 16px 72px; }
  .announcement-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .announcement-heading>span { white-space:normal; }
  .announcement-list { grid-template-columns:1fr; }
  .announcement-card.is-latest { grid-column:auto; grid-template-columns:1fr; }
  .announcement-copy { padding:28px 22px; }
  .announcement-card h3,.announcement-card.is-latest h3 { font-size:24px; }
  .announcement-media { min-height:220px; }
  .announcement-media img,.announcement-media video { min-height:220px; max-height:320px; }
  .home-order-dock { right:20px; bottom:16px; left:20px; min-width:0; }
  .home-order-dock small { display:none; }
  .privacy-page { width:calc(100% - 48px); padding:52px 0 104px; }
  .privacy-page>article { padding:36px 24px; }
  .privacy-actions { align-items:stretch; flex-direction:column; }
  .delivery-section { padding:84px 4px; }
  .delivery-section::before { inset:34px -5px; }
  .delivery-rules { grid-template-columns:1fr; }
  .delivery-rules li { min-height:auto; padding:24px 22px; border:1px solid rgba(167,120,73,.38); }
  .contact-section { padding:84px 0; grid-template-columns:1fr; gap:48px; }
  .contact-section address { padding:28px 24px; }
  footer { padding:30px 24px 94px; align-items:flex-start; flex-direction:column; gap:20px; }
  footer>div:last-child { justify-content:flex-start; }
  .product-detail { grid-template-columns:1fr; }
  .product-detail>img { min-height:260px; max-height:320px; }
  .product-detail-copy { padding:32px 24px; }
  .bulk-order-dialog-card { padding:34px 22px 24px; }
  .bulk-order-dialog-card h2 { font-size:26px; }
}
