@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');

:root { --ink:#17191b; --muted:#666b70; --line:#d7d9da; --paper:#f3f3f1; --white:#fff; --steel:#899096; --dark:#171a1c; --max:1200px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,"Noto Sans SC",sans-serif; }
img { display:block; width:100%; }
a { color:inherit; text-decoration:none; }
.section-shell { width:min(var(--max),calc(100% - 48px)); margin-inline:auto; }
.site-header { position:absolute; z-index:10; top:0; left:50%; width:min(var(--max),calc(100% - 48px)); height:96px; transform:translateX(-50%); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(23,25,27,.15); }
.brand { display:flex; align-items:center; }
.brand-logo { display:block; width:148px; height:48px; object-fit:contain; object-position:left center; mix-blend-mode:multiply; }
nav { display:flex; gap:36px; font-size:13px; font-weight:500; }
nav a { position:relative; }
nav a::after { content:""; position:absolute; left:0; bottom:-8px; width:0; height:1px; background:var(--ink); transition:.25s; }
nav a:hover::after { width:100%; }
.language-control { display:flex; align-items:center; }
.language-select { max-width:150px; padding:7px 26px 7px 10px; border:1px solid #b9bdc0; border-radius:0; color:var(--ink); background:rgba(255,255,255,.58); font:inherit; cursor:pointer; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.menu-toggle { display:none; border:0; background:none; font:inherit; }
.hero { min-height:790px; padding-top:154px; display:grid; grid-template-columns:.86fr 1.14fr; gap:72px; align-items:center; }
.eyebrow { margin:0 0 22px; color:#6d7378; font-size:11px; font-weight:700; letter-spacing:.22em; }
h1,h2,h3,p { margin-top:0; }
h1 { margin-bottom:28px; font-size:clamp(48px,5.4vw,78px); line-height:1.08; letter-spacing:-.055em; }
h1 span { color:#848a8e; font-weight:500; }
.lead { max-width:510px; color:var(--muted); font-size:16px; line-height:1.9; }
.actions { display:flex; gap:12px; margin:36px 0 54px; }
.button { min-height:50px; padding:0 24px; display:inline-flex; align-items:center; justify-content:center; gap:22px; font-size:13px; font-weight:600; transition:.25s; }
.button.primary { color:#fff; background:var(--ink); }.button.primary:hover { background:#3d4246; transform:translateY(-2px); }
.button.ghost { border:1px solid #b9bdc0; }.button.ghost:hover { background:#fff; }
.hero-stats { display:grid; grid-template-columns:repeat(3,1fr); margin:0; padding-top:24px; border-top:1px solid var(--line); }
.hero-stats dt { margin-bottom:8px; font-size:13px; font-weight:700; }.hero-stats dd { margin:0; color:#777c80; font-size:10px; }
.image-frame { position:relative; padding:42px; background:linear-gradient(145deg,#d7d8d7,#f5f5f3); box-shadow:0 24px 80px rgba(22,25,27,.11); }
.image-frame::before,.image-frame::after { content:""; position:absolute; width:46px; height:46px; border-color:#93999d; }
.image-frame::before { top:20px; left:20px; border-top:1px solid; border-left:1px solid; }.image-frame::after { right:20px; bottom:20px; border-right:1px solid; border-bottom:1px solid; }
.image-frame img { aspect-ratio:1.3; object-fit:cover; filter:contrast(1.04); }
.frame-index { position:absolute; top:18px; right:20px; font-size:10px; letter-spacing:.18em; }.frame-caption { position:absolute; left:20px; bottom:18px; font-size:9px; letter-spacing:.18em; }
.marquee { overflow:hidden; padding:18px 0; color:#dfe1e2; background:var(--ink); white-space:nowrap; }
.marquee div { width:max-content; padding-left:5vw; font-size:11px; letter-spacing:.18em; }.marquee span { margin:0 34px; color:#6f7579; }
.products { padding-block:130px; }
.section-heading { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:end; margin-bottom:64px; }
.section-heading h2 { margin:0; font-size:clamp(40px,5vw,62px); line-height:1.13; letter-spacing:-.045em; }
.section-heading>p { max-width:460px; margin:0; color:var(--muted); font-size:14px; line-height:1.9; }
.product-card { display:grid; grid-template-columns:1.28fr .72fr; min-height:520px; margin-bottom:28px; background:var(--white); }
.product-card--reverse { grid-template-columns:.72fr 1.28fr; }.product-card--reverse .product-image { order:2; }.product-card--reverse .product-copy { order:1; }
.product-image { overflow:hidden; background:#e7e7e5; }.product-image img { height:100%; object-fit:cover; transition:transform .7s ease; }.product-card:hover img { transform:scale(1.025); }
.product-copy { padding:64px 54px; display:flex; flex-direction:column; align-items:flex-start; }
.product-no { margin-bottom:auto; color:#888e92; font-size:10px; letter-spacing:.18em; }
.product-copy h3 { margin:56px 0 18px; font-size:30px; letter-spacing:-.025em; }.product-copy p { color:var(--muted); font-size:13px; line-height:1.9; }
.product-copy ul { margin:12px 0 36px; padding:0; list-style:none; color:#4e5357; font-size:12px; line-height:2.2; }.product-copy li::before { content:"—"; margin-right:10px; color:#9ca1a4; }
.product-copy a { margin-top:auto; padding-bottom:8px; border-bottom:1px solid #9ca0a3; font-size:12px; font-weight:600; }.product-copy a span { margin-left:36px; }
.advantages { padding-block:128px; color:#fff; background:var(--dark); }
.section-heading.light .eyebrow,.section-heading.light>p { color:#949a9e; }.section-heading.light h2 { font-size:clamp(38px,4.6vw,58px); }
.advantage-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #393d40; border-left:1px solid #393d40; }
.advantage-grid article { min-height:260px; padding:34px 28px; border-right:1px solid #393d40; border-bottom:1px solid #393d40; }.advantage-grid span { color:#70767a; font-size:10px; }.advantage-grid h3 { margin:90px 0 14px; font-size:18px; }.advantage-grid p { margin:0; color:#969b9e; font-size:12px; line-height:1.8; }
.contact { padding-block:140px; text-align:center; }.contact h2 { margin-bottom:22px; font-size:clamp(38px,5vw,64px); letter-spacing:-.05em; }.contact>p:not(.eyebrow) { color:var(--muted); }.contact-actions { margin-top:36px; display:flex; flex-direction:column; align-items:center; gap:18px; }.contact-actions span { color:#8b9093; font-size:10px; }
footer { width:min(var(--max),calc(100% - 48px)); margin:auto; padding:34px 0; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); }footer p { margin:0; color:#8b9093; font-size:10px; }
.js .reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease,transform .7s ease; }.js .reveal.visible { opacity:1; transform:none; }
@media (max-width:1000px) { nav { gap:20px; }.hero { grid-template-columns:1fr; padding-top:140px; padding-bottom:80px; gap:54px; }.hero-copy { max-width:680px; }.product-card,.product-card--reverse { grid-template-columns:1fr; }.product-card--reverse .product-image,.product-card--reverse .product-copy { order:initial; }.product-image { min-height:420px; }.advantage-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:640px) { .section-shell,.site-header,footer { width:calc(100% - 32px); }.site-header { height:76px; }.menu-toggle { display:block; }.site-header nav { position:absolute; top:70px; right:0; padding:18px 22px; display:none; flex-direction:column; gap:20px; background:#fff; box-shadow:0 16px 35px rgba(0,0,0,.1); }.site-header nav.open { display:flex; }.hero { min-height:auto; padding-top:118px; gap:38px; }.eyebrow { margin-bottom:16px; }h1 { font-size:46px; }.actions { align-items:stretch; flex-direction:column; margin:28px 0 40px; }.hero-stats { gap:12px; }.hero-stats dd { line-height:1.5; }.image-frame { padding:24px; }.image-frame img { aspect-ratio:1.1; }.products,.advantages,.contact { padding-block:84px; }.section-heading { grid-template-columns:1fr; gap:20px; margin-bottom:38px; }.product-image { min-height:280px; }.product-copy { padding:38px 28px; }.product-no { margin-bottom:20px; }.product-copy h3 { margin:16px 0; }.advantage-grid { grid-template-columns:1fr; }.advantage-grid article { min-height:210px; }.advantage-grid h3 { margin-top:62px; }footer { gap:24px; align-items:flex-start; flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }*,*::before,*::after { transition:none!important; } }
