@font-face{font-family:HansenGrotesque;src:url('/assets/fonts/HansenGrotesque.ttf') format('truetype');font-weight:400;font-display:swap;unicode-range:U+0000-024F,U+2000-206F,U+2122}
@font-face{font-family:HansenGrotesque;src:url('/assets/fonts/HansenGrotesque-Medium.ttf') format('truetype');font-weight:500 600;font-display:swap;unicode-range:U+0000-024F,U+2000-206F,U+2122}
@font-face{font-family:HansenGrotesque;src:url('/assets/fonts/HansenGrotesque-Bold.ttf') format('truetype');font-weight:700 900;font-display:swap;unicode-range:U+0000-024F,U+2000-206F,U+2122}
.products-page{font-family:HansenGrotesque,'Noto Sans KR',sans-serif}.products-intro{padding:80px 6.2% 48px}.products-intro .eyebrow{font-size:12px;letter-spacing:2px}.products-intro h1{font-family:HansenGrotesque,sans-serif;font-weight:400;font-size:clamp(46px,6vw,80px);letter-spacing:-2px;margin:20px 0}.products-intro p{font-size:14px;color:var(--muted);line-height:1.9}.catalog{padding:0 6.2% 90px}.catalog-toolbar{display:flex;gap:24px;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid var(--line)}#product-filters{display:flex;flex-wrap:wrap;gap:8px}#product-filters button{background:transparent;color:var(--ink);padding:10px 16px;border:1px solid transparent;border-radius:2px;font-size:15px}#product-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper)}#product-filters button:hover{border-color:var(--ink)}.catalog-search{display:flex;align-items:center;border-bottom:1px solid var(--ink);gap:8px;min-width:190px}.catalog-search input{width:100%;padding:10px 0;border:0;background:transparent;color:var(--ink);font-size:14px}.catalog-meta{display:flex;justify-content:space-between;gap:20px;margin:22px 0 30px;font-size:12px;color:var(--muted)}#product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 22px}.product-image{position:relative;aspect-ratio:1;background:#efeeeb;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;transform:scale(.82);transition:transform .35s}.product-card:hover img,.product-card:focus-visible img{transform:scale(1)}.product-arrow{position:absolute;right:15px;bottom:12px;font-size:22px;opacity:0;transition:opacity .2s}.product-card:hover .product-arrow,.product-card:focus-visible .product-arrow{opacity:1}.product-card h2{font-family:HansenGrotesque,sans-serif;font-size:20px;font-weight:400;line-height:1.25;margin:17px 0 7px;letter-spacing:0}.product-card p{font-size:12px;color:var(--muted)}#product-empty{padding:70px 0;text-align:center;color:var(--muted)}.catalog-note{border-top:1px solid var(--line);margin-top:60px;padding-top:24px;font-size:13px;color:var(--muted)}
@media(max-width:1100px){.catalog-toolbar{align-items:flex-start;flex-direction:column}.catalog-search{width:100%;max-width:320px}.header nav{gap:18px}}
@media(max-width:760px){.products-intro{padding:45px 6% 32px}.products-intro h1{letter-spacing:-1px}.catalog{padding:0 6% 60px}#product-filters{gap:4px}#product-filters button{font-size:13px;padding:9px 11px}.catalog-meta{font-size:11px;align-items:flex-start}.catalog-meta span:last-child{max-width:160px;text-align:right}#product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.product-card h2{font-size:17px;margin-top:12px}.product-card p{font-size:11px}.product-arrow{opacity:1;font-size:16px;right:9px;bottom:7px}}
@media(prefers-reduced-motion:reduce){.product-image img{transition:none}}
.products-intro h1 { font-family: HansenGrotesque, "Noto Sans KR", sans-serif; font-size: clamp(34px, 4.5vw, 64px); letter-spacing: -.04em; line-height: 1.35; }
.products-intro-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.products-consult{background:#eff3a0;color:#273d31;border-color:#d4dab2;min-height:48px;gap:12px;font-size:14px;flex-shrink:0}.products-consult:hover{background:#e4eaa2}.products-consult>span{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.products-consult i{display:flex;flex-shrink:0}.products-consult svg{width:20px;height:20px}.products-consult{max-width:100%}@media(max-width:760px){.products-intro-contact{align-items:stretch;gap:20px}.products-intro-contact p{flex-basis:100%}.products-consult{width:100%;justify-content:center}}
