/* Public pages share a restrained Swiss-inspired typographic and spacing system. */
:root{--swiss-type:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;--swiss-ink:#17231d;--swiss-muted:#64716a;--swiss-rule:#dce2dd;--swiss-green:#1c392b;--public-section-space:48px;--public-intro-space:40px;--public-tail-space:32px}
html{scroll-behavior:smooth}
body{background:#fff;color:var(--swiss-ink);font-family:var(--swiss-type)}
button,input,select,textarea{font-family:var(--swiss-type)}
a,button,input,select{outline-offset:3px}
:focus-visible{outline:2px solid #39744b}
.header,.editorial-page .header{height:64px;background:#fffffff2;border-bottom:1px solid var(--swiss-rule);box-shadow:none}
.header nav a,.header nav summary,.editorial-page .header nav a,.editorial-page .header nav summary{font-size:12px;font-weight:600;letter-spacing:0;color:#324039}
.header nav a:hover,.header nav summary:hover{color:#22663d}
.header .nav-menu,.editorial-page .header .nav-menu{border:1px solid var(--swiss-rule);border-radius:6px;box-shadow:0 16px 38px #17291b14}
.header .nav-menu a,.editorial-page .header .nav-menu a{font-weight:500}
.admin-link{font-size:11px}
.eyebrow,.section-kicker{font-size:10px;letter-spacing:.16em;font-weight:700}
.hero{min-height:0;border-bottom:1px solid var(--swiss-rule)}
.hero-copy{padding-top:0;min-height:0}
.hero h1{font-family:var(--swiss-type);font-size:clamp(43px,5.3vw,76px);font-weight:700;letter-spacing:-.07em;line-height:1.24;text-wrap:balance}
.title-phrase{white-space:nowrap}
.hero-copy>p{font-size:15px;line-height:1.85}
.hero-visual{height:610px}
.button,.hero-actions .button,.editorial-cta a{border-radius:5px}
.button:hover{transform:none}
.section{padding-top:var(--public-section-space);padding-bottom:var(--public-section-space)}
.section-heading{border-bottom:1px solid var(--swiss-rule);padding-bottom:25px;margin-bottom:28px;align-items:end}
.section-heading h2,.builder h2,.about h2,.contact h2{font-family:var(--swiss-type);font-size:clamp(32px,3.1vw,48px);font-weight:680;letter-spacing:-.055em;line-height:1.25;text-wrap:balance}
.section-heading>p{font-size:12px}
.products-section .product-tools{top:76px;border:1px solid var(--swiss-rule);border-radius:6px;box-shadow:none;background:#fffffff5}
.filters button{border-radius:3px;font-weight:550}
.filters button.active{border-color:#b5c7b8;background:#edf3ee;color:#1c4730}
.search{border:1px solid var(--swiss-rule);border-radius:4px;padding:0 10px}
.search input{font-size:12px}
.list-foot .button{border-radius:4px}
.selection-dock{border-radius:8px;box-shadow:0 14px 42px #16281d23;border-color:#cbd8cf}
.selection-bottom button{border-radius:4px}
.selection-item img{background:#fff;border:1px solid #e8ede8;border-radius:3px}
.selection-notice{border-radius:4px}
.builder-entry-steps div{border-top:1px solid #8da395}
.craft-grid article,.case-grid article,.craft-card,.case-grid-page article,.value-grid article{border-radius:8px}
.craft-card img{background:#fff}
.editorial-page main{max-width:1500px}
.page-hero{padding:var(--public-intro-space) 0 var(--public-tail-space);gap:5vw}
.page-hero h1{font-family:var(--swiss-type);font-size:clamp(39px,4.5vw,66px);font-weight:680;letter-spacing:-.06em;line-height:1.18;text-wrap:balance}
.page-hero p,.hero-aside{line-height:1.75}
.search-layout{grid-template-columns:205px minmax(0,1fr);gap:38px}
.search-sidebar h2{font-size:13px}
.search-sidebar button{font-size:12px;padding:12px 0}
.search-sidebar button.active{color:#1a5130}
.search-box{border-radius:5px;height:51px}
.search-box input{font-size:13px}
.search-box button{background:var(--swiss-green);font-size:12px}
.search-count{margin:18px 0 20px}
.search-more{border-radius:5px}
.seo-page main{max-width:1500px}
.seo-page .category-hero{padding:30px 0 38px;border-bottom:1px solid var(--swiss-rule)}
.seo-page .category-hero h1{font-family:var(--swiss-type);font-size:clamp(42px,5vw,68px);font-weight:680;letter-spacing:-.07em}
.seo-page .category-hero p{font-size:13px;color:var(--swiss-muted);max-width:610px;line-height:1.75}
.seo-page .category-cta{border-radius:6px;border:1px solid var(--swiss-rule);background:#f7f9f7}
.seo-page .category-cta .primary{border-radius:4px}
.seo-page .main-photo,.seo-page .main-photo img,.seo-page .product-images .main-image{border-radius:6px;background:#fff}
.seo-page .product-info h1{font-family:var(--swiss-type);font-weight:680}
.editorial-cta{border-radius:8px}
@media(max-width:900px){.search-layout{grid-template-columns:175px minmax(0,1fr);gap:22px}}
@media(max-width:760px){:root{--public-section-space:32px;--public-intro-space:28px;--public-tail-space:24px}.header,.editorial-page .header{height:60px}.hero{grid-template-columns:1fr}.hero-copy{padding-top:0}.hero-visual{height:460px}.section-heading{align-items:flex-start}.section{padding-top:var(--public-section-space);padding-bottom:var(--public-section-space)}.products-section .product-tools{top:60px}.search-layout{display:block}.search-sidebar{position:static;border-bottom:1px solid var(--swiss-rule);padding-bottom:12px;margin-bottom:20px}.search-sidebar #searchCategories{display:flex;gap:10px;overflow:auto}.search-sidebar button{flex:0 0 auto;width:auto;border:0;white-space:nowrap;padding:8px 3px}.page-hero{padding:var(--public-intro-space) 0 var(--public-tail-space)}.seo-page .category-hero{padding:15px 0 28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


.site-footer{flex-wrap:wrap;gap:12px}.site-footer .site-record{display:flex;flex:1 0 100%;align-items:center;justify-content:center;min-height:44px;max-width:100%;font-size:12px;line-height:1.5;color:inherit;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}

