@import "tailwindcss";

:root { --ink:#101311; --paper:#f2f0e9; --green:#0c5b3f; --line:rgba(16,19,17,.18); --muted:#626861; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-geist-sans),Arial,Helvetica,sans-serif; }
.zh-page { font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans GB","PingFang SC","Microsoft YaHei UI",sans-serif; font-weight:400; }
.zh-page h1,.zh-page h2,.zh-page h3 { letter-spacing:-.025em; font-weight:560; }
.zh-page .hero h1 { line-height:1.08; font-weight:520; }
.zh-page .hero h1 em,.zh-page .contact h2 em { font-style:normal; font-weight:520; color:#c7df91; }
.zh-page .eyebrow { letter-spacing:.1em; font-weight:500; }
.zh-page .hero-copy,.zh-page .section-intro p,.zh-page .factory-copy>p { font-weight:350; line-height:1.85; }
.zh-page .button { font-weight:560; border-radius:2px; }
.zh-page .product-grid h3,.zh-page .scenario-grid h3 { font-weight:540; letter-spacing:-.015em; }
.zh-page .product-grid p,.zh-page .scenario-grid p,.zh-page .faq-list details p { line-height:1.8; }
.zh-page .one-team b { font-weight:540; }
a { color:inherit; text-decoration:none; }
img { display:block; width:100%; height:100%; object-fit:cover; }
.nav-shell { height:72px; padding:0 clamp(20px,4vw,64px); background:rgba(242,240,233,.94); display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:32px; position:relative; z-index:20; border-bottom:1px solid var(--line); }
.brand,.footer-brand { display:flex; gap:8px; align-items:center; font-size:13px; font-weight:800; letter-spacing:.16em; }
.brand-mark { background:var(--green); color:white; padding:7px 8px 6px; letter-spacing:.08em; }
nav { display:flex; gap:32px; font-size:13px; }
nav a { padding:10px 0; border-bottom:1px solid transparent; }
nav a:hover { border-color:var(--ink); }
.button { display:inline-flex; width:max-content; min-height:50px; align-items:center; justify-content:center; padding:0 24px; background:var(--green); color:white; font-size:13px; font-weight:700; letter-spacing:.04em; white-space:nowrap; transition:transform .2s, background .2s; }
.button:hover { background:#084b34; transform:translateY(-2px); }
.button:active { transform:translateY(1px); }
.button-small { justify-self:end; min-height:42px; padding:0 18px; }
.nav-actions { justify-self:end; display:flex; align-items:center; gap:22px; }
.language { display:flex; gap:9px; font-size:11px; align-items:center; }
.language b { color:var(--green); }.language a { color:var(--muted); }
.hero { min-height:calc(100dvh - 72px); position:relative; display:flex; align-items:flex-end; overflow:hidden; background:#173e30; }
.hero-media { position:absolute; inset:0; background:url('/images/hero.webp') center/cover no-repeat; transform:scale(1.025); }
.hero-scrim { position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,13,10,.97) 0%,rgba(5,13,10,.94) 43%,rgba(5,13,10,.72) 57%,rgba(5,13,10,.14) 78%), linear-gradient(0deg,rgba(5,13,10,.58),transparent 58%); }
.hero-content { position:relative; z-index:2; padding:0 clamp(20px,5vw,102px) clamp(92px,10vh,120px); color:white; max-width:960px; }
.eyebrow { text-transform:uppercase; letter-spacing:.2em; font-size:11px; font-weight:700; }
.hero h1 { margin:24px 0 28px; font-size:clamp(50px,5vw,82px); font-weight:520; letter-spacing:-.048em; line-height:.98; max-width:880px; }
.hero h1 em,.contact h2 em { color:#b7d875; font-family:Georgia,"Times New Roman",serif; font-style:italic; font-weight:400; letter-spacing:-.035em; }
.hero-copy { font-size:clamp(16px,1.35vw,20px); font-weight:400; line-height:1.65; max-width:650px; margin:0; }
.hero-actions { display:flex; gap:30px; align-items:center; margin-top:34px; }
.text-link { font-size:13px; font-weight:700; border-bottom:1px solid rgba(255,255,255,.5); padding:12px 0; }
.text-link span { margin-left:8px; }
.hero-index { position:absolute; z-index:2; color:white; bottom:26px; left:clamp(20px,4vw,64px); right:clamp(20px,4vw,64px); display:flex; justify-content:space-between; font:11px var(--font-geist-mono),monospace; letter-spacing:.12em; }
.proof-strip { display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid var(--line); }
.proof-strip div { padding:34px clamp(20px,3vw,48px); border-right:1px solid var(--line); }
.proof-strip div:last-child { border:0; }
.proof-strip strong { display:block; font-size:clamp(26px,3vw,46px); letter-spacing:-.05em; }
.proof-strip span { color:var(--muted); font-size:12px; }
.section { padding:clamp(84px,11vw,160px) clamp(20px,5vw,80px); }
.section-intro { display:grid; grid-template-columns:1.45fr .55fr; gap:8vw; align-items:end; margin-bottom:76px; }
.section h2,.factory h2 { margin:0; font-size:clamp(42px,6vw,82px); letter-spacing:-.06em; line-height:.98; }
.section-intro p,.factory-copy>p,.project-lead p,.standards>div>p { color:var(--muted); font-size:17px; line-height:1.6; margin:0; }
.products { background:#f2f0e9; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.product-grid article { min-height:280px; padding:28px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; transition:background .2s,transform .2s; }
.product-grid a:hover article { background:#e5e3da; transform:translateY(-3px); }
.product-grid article>span { font:11px var(--font-geist-mono),monospace; color:var(--green); }
.product-grid h3 { margin:auto 0 12px; font-size:clamp(24px,2.2vw,36px); letter-spacing:-.05em; line-height:1; }
.product-grid b { color:var(--green); font-size:11px; letter-spacing:.04em; text-transform:uppercase; }
.product-grid p { color:var(--muted); line-height:1.5; font-size:13px; margin:14px 0 0; }
.product-grid em { margin-top:18px; color:var(--green); font-size:12px; font-style:normal; font-weight:700; }
.product-actions { display:flex; align-items:center; gap:30px; margin-top:34px; }
.plain-link { font-size:13px; font-weight:700; border-bottom:1px solid var(--line); padding:10px 0; }
.system { background:#e7e3d9; }
.system-compare { display:grid; grid-template-columns:1fr 72px 1fr; align-items:stretch; }
.system-compare article { min-height:360px; border:1px solid var(--line); padding:30px; display:flex; flex-direction:column; justify-content:space-between; }
.system-compare article>p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; max-width:400px; }
.compare-label { font:10px var(--font-geist-mono),monospace; letter-spacing:.15em; color:var(--muted); }
.supplier-cloud { display:grid; grid-template-columns:repeat(6,1fr); align-items:center; gap:8px; padding:45px 0; }
.supplier-cloud i { grid-column:span 2; border:1px solid var(--line); min-height:70px; display:flex; align-items:center; justify-content:center; font-style:normal; font-size:13px; background:rgba(255,255,255,.35); }
.supplier-cloud i:nth-child(4) { grid-column:2/span 2; }
.system-arrow { display:flex; align-items:center; justify-content:center; font-size:28px; color:var(--green); }
.system-compare .integrated { background:var(--green); color:white; border-color:var(--green); }
.integrated .compare-label,.integrated>p { color:rgba(255,255,255,.68); }
.one-team { min-height:190px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; border:1px solid rgba(255,255,255,.3); }
.one-team b { font-size:clamp(27px,3vw,44px); letter-spacing:-.05em; }
.one-team span { font-size:12px; margin-top:16px; color:#dbe9b8; }
.capability { display:grid; grid-template-columns:70px minmax(240px, .7fr) 1fr; gap:clamp(24px,4vw,72px); align-items:center; border-top:1px solid var(--line); padding:34px 0; }
.capability:last-child { border-bottom:1px solid var(--line); }
.capability-no { font:12px var(--font-geist-mono),monospace; color:var(--muted); }
.capability-image { height:220px; overflow:hidden; }
.capability-copy h3 { font-size:clamp(28px,4vw,52px); letter-spacing:-.05em; margin:0 0 16px; }
.capability-copy p { max-width:600px; color:var(--muted); line-height:1.6; margin:0; }
.factory { display:grid; grid-template-columns:1.05fr .95fr; background:#101c17; color:white; }
.factory-image { min-height:700px; }
.factory-copy { padding:clamp(70px,9vw,130px); display:flex; flex-direction:column; justify-content:center; }
.factory-copy>p { color:#b8c1bb; margin:28px 0 46px; }
.factory-copy .eyebrow { color:#b7d875; margin:0 0 18px; }
.factory ol { list-style:none; padding:0; margin:0; border-top:1px solid rgba(255,255,255,.2); }
.factory li { display:grid; grid-template-columns:72px 1fr; gap:24px; padding:20px 0; border-bottom:1px solid rgba(255,255,255,.2); align-items:center; }
.factory li span { font:12px var(--font-geist-mono),monospace; color:#b7d875; }
.factory li b { font-size:15px; }
.standards { display:grid; grid-template-columns:.8fr 1.2fr; gap:10vw; align-items:center; }
.standards h2 { font-size:clamp(40px,5vw,68px); }
.standards>div>p { margin-top:24px; max-width:520px; }
.cert-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.cert-grid span { min-height:104px; display:flex; align-items:center; justify-content:center; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-weight:700; font-size:13px; }
.process { background:#dce3da; }
.process h2 { max-width:760px; }
.process-track { margin-top:72px; display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line); }
.process-track article { padding:24px 22px 40px 0; border-right:1px solid var(--line); min-height:250px; }
.process-track article+article { padding-left:22px; }
.process-track article:last-child { border:0; }
.process-track span { font:11px var(--font-geist-mono),monospace; color:var(--green); }
.process-track h3 { margin:56px 0 14px; font-size:22px; }
.process-track p { color:var(--muted); font-size:13px; line-height:1.55; margin:0; }
.project-lead { max-width:820px; }
.project-lead p { max-width:600px; margin-top:26px; }
.project-mosaic { display:grid; grid-template-columns:1.3fr .7fr; grid-template-rows:320px 220px; gap:16px; margin-top:70px; }
.project-mosaic figure { margin:0; position:relative; overflow:hidden; }
.project-large { grid-row:1 / span 2; }
.project-mosaic figcaption { position:absolute; left:18px; bottom:16px; background:rgba(242,240,233,.92); padding:10px 12px; font-size:12px; font-weight:700; }
.project-note { background:var(--green); color:white; padding:30px; display:flex; flex-direction:column; justify-content:space-between; }
.project-note span { font:10px var(--font-geist-mono),monospace; letter-spacing:.16em; }
.project-note p { font-size:clamp(20px,2.5vw,34px); letter-spacing:-.04em; line-height:1.05; margin:0; }
.applications { background:#111713; color:white; }
.applications-head { display:grid; grid-template-columns:.45fr 1.55fr; gap:8vw; align-items:start; }
.applications-head .eyebrow { color:#b7d875; margin-top:12px; }
.scenario-grid { display:grid; grid-template-columns:repeat(2,1fr); margin-top:76px; border-top:1px solid rgba(255,255,255,.22); border-left:1px solid rgba(255,255,255,.22); }
.scenario-grid article { padding:34px; min-height:300px; border-right:1px solid rgba(255,255,255,.22); border-bottom:1px solid rgba(255,255,255,.22); display:flex; flex-direction:column; }
.scenario-grid span { color:#b7d875; font:11px var(--font-geist-mono),monospace; }
.scenario-grid h3 { font-size:clamp(27px,3.2vw,44px); line-height:1; letter-spacing:-.05em; max-width:540px; margin:auto 0 18px; }
.scenario-grid p { color:#aeb7b1; line-height:1.6; margin:0; max-width:560px; }
.case-note { color:#77827b; font-size:11px; margin:24px 0 0; }
.faq { display:grid; grid-template-columns:.75fr 1.25fr; gap:9vw; border-top:1px solid var(--line); }
.faq h2 { font-size:clamp(40px,5vw,66px); }
.faq-list details { border-top:1px solid var(--line); padding:24px 0; }
.faq-list details:last-child { border-bottom:1px solid var(--line); }
.faq-list summary { list-style:none; cursor:pointer; display:grid; grid-template-columns:54px 1fr; font-weight:700; font-size:18px; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { color:var(--green); font:11px var(--font-geist-mono),monospace; padding-top:4px; }
.faq-list details p { margin:20px 0 0 54px; color:var(--muted); line-height:1.6; max-width:650px; }
.contact { background:var(--green); color:white; padding:clamp(80px,12vw,180px) clamp(20px,8vw,120px); }
.contact>p { font:11px var(--font-geist-mono),monospace; letter-spacing:.16em; text-transform:uppercase; }
.contact h2 { font-size:clamp(48px,9vw,124px); line-height:.9; letter-spacing:-.07em; margin:30px 0 55px; }
.button-light { background:white; color:var(--green); }
.button-light:hover { background:#dce3da; }
.contact-hint { display:block; margin-top:18px; color:rgba(255,255,255,.7); font-size:12px; }
.catalog-hero { padding:clamp(64px,7vw,104px) clamp(20px,6vw,96px); background:#10251d; color:white; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); grid-template-rows:auto auto; align-items:end; column-gap:8vw; row-gap:24px; }
.catalog-hero .eyebrow { grid-column:1; grid-row:1; margin:0; align-self:start; }
.catalog-hero h1 { grid-column:1; grid-row:2; margin:0; font-size:clamp(44px,5.5vw,76px); line-height:1; letter-spacing:-.055em; max-width:900px; }
.catalog-hero>p:last-child { grid-column:2; grid-row:2; color:#b7c0ba; font-size:16px; line-height:1.75; max-width:520px; margin:0 0 4px; }
.zh-page .catalog-hero h1 { line-height:1.14; letter-spacing:-.025em; max-width:760px; }
.catalog-shell { padding:0 clamp(20px,5vw,80px) 120px; }
.catalog-layout { display:grid; grid-template-columns:260px 1fr; gap:clamp(40px,6vw,90px); }
.catalog-layout>aside { padding-top:54px; position:sticky; top:0; height:max-content; }
.catalog-layout>aside>p { font:10px var(--font-geist-mono),monospace; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); margin:0 0 22px; }
.catalog-filters { display:block; border-top:1px solid var(--line); }
.catalog-filters button { width:100%; border:0; border-bottom:1px solid var(--line); background:transparent; padding:16px 0; cursor:pointer; color:var(--muted); display:flex; justify-content:space-between; text-align:left; font-size:13px; }
.catalog-filters button i { font:10px var(--font-geist-mono),monospace; font-style:normal; }
.catalog-filters button.active,.catalog-filters button:hover { color:var(--green); font-weight:700; }
.catalog-aside-note { margin-top:54px; padding:22px 0; border-top:2px solid var(--ink); display:flex; flex-direction:column; gap:12px; }
.catalog-aside-note b { font-size:13px; }.catalog-aside-note span { color:var(--muted); font-size:12px; line-height:1.6; }
.catalog-results { min-width:0; }
.catalog-search { height:86px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); }
.catalog-search>span { font-size:12px; color:var(--muted); }
.catalog-search input { width:min(360px,55%); border:0; border-bottom:1px solid var(--line); background:transparent; padding:10px 2px; outline:none; }
.catalog-list { border-bottom:1px solid var(--line); }
.catalog-row { display:grid; grid-template-columns:38px minmax(180px,260px) 1fr 72px; gap:clamp(18px,3vw,42px); align-items:center; padding:28px 0; border-top:1px solid var(--line); }
.catalog-row:first-child { border-top:0; }
.catalog-row:hover .catalog-body h2 { color:var(--green); }
.catalog-index { font:10px var(--font-geist-mono),monospace; color:var(--muted); }
.catalog-image { height:180px; overflow:hidden; background:#ddd8ce; }
.catalog-body { padding:0; }
.catalog-body>span { font:9px var(--font-geist-mono),monospace; color:var(--muted); text-transform:uppercase; letter-spacing:.12em; }
.catalog-body h2 { font-size:clamp(25px,2.5vw,38px); letter-spacing:-.045em; margin:28px 0 8px; transition:color .2s; }
.catalog-body b { font-size:10px; color:var(--green); text-transform:uppercase; letter-spacing:.04em; }
.catalog-body p { color:var(--muted); line-height:1.6; margin:16px 0 0; max-width:580px; font-size:13px; }
.catalog-row>em { justify-self:end; font-size:11px; line-height:1.6; font-style:normal; font-weight:700; color:var(--green); }
.detail-hero { display:grid; grid-template-columns:1fr 1fr; min-height:680px; background:#e7e3d9; }
.detail-hero>div:first-child { padding:clamp(60px,8vw,120px); display:flex; flex-direction:column; justify-content:center; }
.detail-hero h1 { font-size:clamp(50px,7vw,92px); line-height:.94; letter-spacing:-.065em; margin:30px 0 16px; }
.detail-hero>div:first-child>b { color:var(--green); font-size:12px; text-transform:uppercase; }
.detail-hero>div:first-child>p:not(.eyebrow) { color:var(--muted); line-height:1.7; font-size:17px; max-width:620px; margin:28px 0; }
.detail-image { min-height:620px; }
.back-link { font-size:12px; margin-bottom:44px; color:var(--muted); }
.detail-sections { display:grid; grid-template-columns:1fr 1fr; padding:clamp(70px,9vw,130px) clamp(20px,7vw,110px); }
.detail-sections article { padding:38px; border-top:1px solid var(--line); }
.detail-sections article:nth-child(odd) { border-right:1px solid var(--line); }
.detail-sections h2 { font-size:clamp(28px,3vw,42px); letter-spacing:-.045em; margin:0 0 28px; }
.detail-sections ul { padding:0; margin:0; list-style:none; }
.detail-sections li { padding:12px 0 12px 22px; border-top:1px solid rgba(16,19,17,.1); color:var(--muted); line-height:1.5; position:relative; }
.detail-sections li:before { content:'↘'; position:absolute; left:0; color:var(--green); }
.related { padding:90px clamp(20px,7vw,110px); background:#132019; color:white; }
.related h2 { font-size:clamp(38px,5vw,68px); letter-spacing:-.055em; margin:20px 0 50px; }
.related>div { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.related a { background:#25332c; }
.related img { height:240px; }
.related a span { display:block; padding:18px; font-size:14px; }
.detail-missing { padding:100px; }
footer { padding:60px clamp(20px,5vw,80px) 28px; display:grid; grid-template-columns:1.8fr 1fr 1fr 1.3fr; gap:40px; background:#0b0e0c; color:white; font-size:13px; }
.footer-brand { align-items:flex-start; flex-wrap:wrap; }
.footer-brand p { flex-basis:100%; color:#8e9791; line-height:1.5; letter-spacing:0; font-weight:400; }
footer>div:not(.footer-brand):not(.footer-meta) { display:flex; flex-direction:column; gap:12px; }
footer b { color:#8e9791; font-size:11px; text-transform:uppercase; letter-spacing:.12em; margin-bottom:6px; }
.footer-meta { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.15); padding-top:24px; display:flex; justify-content:space-between; color:#8e9791; font-size:11px; }
@media (max-width:900px) {
  .catalog-hero { grid-template-columns:1fr; grid-template-rows:auto auto auto; gap:20px; }.catalog-hero .eyebrow{grid-column:1;grid-row:1}.catalog-hero h1{grid-column:1;grid-row:2}.catalog-hero>p:last-child{grid-column:1;grid-row:3}
  .nav-shell { grid-template-columns:1fr auto; } nav { display:none; }.nav-actions { gap:12px; }
  .product-grid { grid-template-columns:1fr 1fr; }
  .catalog-hero { grid-template-columns:1fr; gap:28px; }.catalog-layout { grid-template-columns:200px 1fr; gap:32px; }.catalog-row { grid-template-columns:30px 180px 1fr; }.catalog-row>em { display:none; }.detail-hero { grid-template-columns:1fr; }.detail-image { min-height:450px; }.related>div { grid-template-columns:1fr 1fr; }
  .proof-strip { grid-template-columns:1fr 1fr; }.proof-strip div:nth-child(2){border-right:0}.proof-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .section-intro,.standards,.faq { grid-template-columns:1fr; }.section-intro { gap:24px; }
  .system-compare { grid-template-columns:1fr; }.system-arrow { min-height:64px; transform:rotate(90deg); }.applications-head { grid-template-columns:1fr; gap:20px; }
  .capability { grid-template-columns:44px 1fr; }.capability-image { grid-column:2; }.capability-copy { grid-column:2; }
  .factory { grid-template-columns:1fr; }.factory-image { min-height:420px; }.factory-copy { padding:70px 24px; }
  .process-track { grid-template-columns:1fr 1fr; }.process-track article { border-bottom:1px solid var(--line); }
  .project-mosaic { grid-template-columns:1fr; grid-template-rows:420px 280px 220px; }.project-large { grid-row:auto; }
  footer { grid-template-columns:1fr 1fr; }.footer-brand { grid-column:1/-1; }
}
@media (max-width:560px) {
  .nav-shell { height:64px; }.button-small { padding:0 12px; min-height:38px; }
  .brand { letter-spacing:.08em; }.hero { min-height:calc(100dvh - 64px); }.hero-content { padding-bottom:100px; }.language { display:none; }
  .hero h1 { font-size:clamp(43px,14vw,66px); }.hero-actions { align-items:flex-start; flex-direction:column; gap:10px; }
  .hero-index span:last-child { display:none; }.proof-strip div { padding:24px 20px; }
  .section { padding:82px 20px; }.capability { grid-template-columns:30px 1fr; gap:16px; }.capability-image { height:190px; }
  .product-grid { grid-template-columns:1fr; }.product-grid article { min-height:230px; }.product-actions { align-items:flex-start; flex-direction:column; gap:12px; }
  .catalog-shell { padding-left:20px; padding-right:20px; }.catalog-layout { grid-template-columns:1fr; }.catalog-layout>aside { position:static; padding-top:30px; }.catalog-filters { display:grid; grid-template-columns:1fr 1fr; }.catalog-filters button:nth-child(odd){padding-right:14px}.catalog-filters button:nth-child(even){padding-left:14px}.catalog-aside-note { display:none; }.catalog-search { height:auto; padding:26px 0; flex-direction:column; align-items:stretch; gap:18px; }.catalog-search input { width:100%; }.catalog-row { grid-template-columns:28px 110px 1fr; gap:12px; }.catalog-image { height:120px; }.catalog-body>span,.catalog-body p { display:none; }.catalog-body h2 { margin:12px 0 8px; font-size:22px; }.detail-sections { grid-template-columns:1fr; }.detail-sections article:nth-child(odd){border-right:0}.related>div { grid-template-columns:1fr; }
  .scenario-grid { grid-template-columns:1fr; }.scenario-grid article { min-height:250px; padding:26px; }.supplier-cloud { grid-template-columns:1fr 1fr; }.supplier-cloud i,.supplier-cloud i:nth-child(4) { grid-column:auto; }
  .process-track { grid-template-columns:1fr; }.process-track article,.process-track article+article { padding:24px 0 32px; min-height:0; }.process-track h3 { margin:26px 0 10px; }
  .cert-grid { grid-template-columns:1fr 1fr; }.faq-list summary { grid-template-columns:38px 1fr; font-size:16px; }.faq-list details p { margin-left:38px; }
  footer { grid-template-columns:1fr; }.footer-brand { grid-column:auto; }.footer-meta { flex-direction:column; gap:8px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }

:root{--font-geist-sans:Arial,Helvetica,sans-serif;--font-geist-mono:monospace}








/* Product photo update */
.product-grid .product-photo{display:block;width:100%;height:220px;object-fit:contain;background:#f5f4ef;margin:0 0 24px;border-radius:2px}
.product-grid article{height:100%}.detail-image img{object-fit:contain;width:100%;height:100%;max-height:650px;background:#f5f4ef}.catalog-image img{object-fit:contain}.product-gallery{padding:45px 5vw 60px}.product-gallery h2{font-size:28px;margin:0 0 24px}.product-gallery>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-gallery figure{margin:0;background:#f5f4ef}.product-gallery img{display:block;width:100%;height:420px;object-fit:contain}.related img{object-fit:contain}@media(max-width:640px){.product-gallery>div{grid-template-columns:1fr}.product-gallery img{height:auto;max-height:460px}.product-grid .product-photo{height:200px}.detail-image{min-height:0!important}.detail-image img{height:auto;max-height:500px}.catalog-body h2{overflow-wrap:anywhere}}

/* inquiry */
.inquiry{max-width:900px;margin:auto;padding:70px 24px}.inquiry h1{font-size:clamp(32px,6vw,58px);line-height:1.1}.inquiry form{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:32px 0}.inquiry label{display:grid;gap:8px}.inquiry input,.inquiry textarea{font:inherit;padding:12px;border:1px solid #aaa;background:white;color:#17251e;border-radius:4px;width:100%;box-sizing:border-box}.inquiry label:has(textarea),#inquiry-status{grid-column:1/-1}.inquiry button{cursor:pointer}.inquiry a{text-decoration:underline}@media(max-width:600px){.inquiry form{grid-template-columns:1fr}}
