/* Hyunjin Clean Tec — shared identity and homepage */
@font-face{font-family:Hyunjin Sans;src:url('assets/fonts/Pretendard-Subset.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Hyunjin Chinese;src:url('assets/fonts/NotoSansSC-Subset.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{
  --navy:#073c78;--cyan:#009ad3;--ink:#142f46;--muted:#536777;
  --line:#d7e0e6;--silver:#eef2f4;--font-ui:'Hyunjin Sans','Malgun Gothic',sans-serif;
  --section-space:100px;--content-width:1280px;
}
html[lang=zh-Hans]{--font-ui:'Hyunjin Chinese','Hyunjin Sans','Microsoft YaHei',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;color:var(--ink);font:16px/1.75 var(--font-ui);letter-spacing:-.015em;word-break:keep-all;-webkit-font-smoothing:antialiased}
html[lang=en] body{letter-spacing:0}
html[lang=zh-Hans] body{word-break:normal;overflow-wrap:anywhere;letter-spacing:.01em}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit;background:none;border:0;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
:where(button,a,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--cyan);outline-offset:5px}
img{display:block;max-width:100%}
svg{display:block}
.wrap{width:88%;max-width:var(--content-width);margin-inline:auto}
.header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 4%;background:#fff;position:relative;z-index:10;border-bottom:1px solid #edf1f3}
.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}
.brand img{width:49px;height:43px}
.brand strong{display:block;font-size:24px;font-weight:650;line-height:1.2;letter-spacing:-.045em;color:var(--ink)}
.brand small{display:block;font-size:10px;letter-spacing:.02em;margin-top:6px;color:var(--muted)}
.main-nav{display:flex;gap:36px;align-items:center}
.main-nav a{font-size:16px;font-weight:550;white-space:nowrap;padding:33px 0}
.main-nav a:hover{color:var(--navy)}
.header-actions{display:flex;align-items:center;gap:20px}
.languages{display:flex;gap:2px}
.languages button{font-size:12px;min-height:44px;min-width:44px;padding:10px 9px;color:var(--muted);position:relative}
.languages button[aria-pressed=true]{color:var(--navy);font-weight:650}
.languages button[aria-pressed=true]:after{position:absolute;content:'';height:2px;background:var(--cyan);left:9px;right:9px;bottom:5px}
.menu-toggle{display:none;width:44px;height:44px;padding:10px;justify-content:center;flex-direction:column;gap:6px}
.menu-toggle span{height:2px;width:24px;background:var(--navy)}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-menu{position:absolute;top:96px;left:0;right:0;z-index:9;background:#fff;border-bottom:1px solid var(--line);padding:24px 6%;box-shadow:0 18px 24px #142f4610}
.mobile-menu:not([hidden]){display:flex;flex-direction:column}
.mobile-menu a{font-size:18px;font-weight:550;padding:14px 0;border-bottom:1px solid var(--line)}
.mobile-menu a:last-child{border-bottom:0}
.hero{position:relative;min-height:600px;height:clamp(600px,calc(100svh - 96px),820px);color:#fff;background:#304c52;overflow:hidden;display:flex;align-items:center}
.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-photo{object-position:center 56%}
.hero-shade{background:linear-gradient(90deg,#0a2538b3 0%,#0a25385c 49%,#0a253800 84%)}
.hero-copy{position:relative;z-index:1;width:84%;max-width:1240px;margin:0 auto;padding:70px 0 100px}
.hero-eyebrow{font-size:15px;font-weight:450;letter-spacing:.04em;margin:0 0 25px}
.hero h1{font-size:clamp(44px,4.6vw,74px);font-weight:550;letter-spacing:-.045em;line-height:1.22;margin:0;text-wrap:balance}
.hero h1 span{display:block}
.hero-description{font-size:17px;font-weight:400;line-height:1.8;max-width:560px;margin:30px 0 0}
.hero-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;background:#fff;color:var(--ink);padding:15px 23px;min-height:54px;min-width:190px;font-size:15px;font-weight:550;margin-top:35px;transition:background .2s}
.hero-cta:hover{background:#e7f2f8}
.quick-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--line)}
.quick-links>a{display:flex;align-items:center;gap:20px;padding:34px 25px;min-height:128px}
.quick-links>a:first-child{padding-left:0}
.quick-links>a:last-child{padding-right:0}
.quick-links>a+a{border-left:1px solid var(--line)}
.quick-links strong{display:block;font-size:18px;font-weight:600}
.quick-links small{display:block;font-size:13px;line-height:1.5;color:var(--muted);margin-top:5px}
.quick-links a:hover strong{color:var(--navy)}
.products{padding-block:var(--section-space)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}
.section-caption{font-size:14px;font-weight:500;color:var(--navy);margin:0 0 14px}
.section-heading h2{font-size:clamp(30px,3vw,44px);font-weight:550;line-height:1.35;letter-spacing:-.035em;margin:0}
.product-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.product-list>a{position:relative;display:block;border-bottom:1px solid var(--line);padding-bottom:28px}
.product-visual{display:flex;align-items:center;justify-content:center;height:270px;background:var(--silver);margin-bottom:24px;overflow:hidden}
.product-visual img{height:100%;width:100%;object-fit:cover}
.product-name{display:block;font-size:22px;font-weight:600;letter-spacing:-.02em}
.product-description{display:block;font-size:14px;color:var(--muted);margin-top:8px;padding-right:24px}
.home-story{background:var(--silver);padding:var(--section-space) 0}
.home-story>.wrap{display:grid;grid-template-columns:1.1fr 1fr;gap:90px;align-items:start}
.home-story h2{font-size:clamp(30px,3.2vw,48px);font-weight:550;line-height:1.35;letter-spacing:-.035em;margin:0;white-space:pre-line}
.home-story p{font-size:17px;line-height:1.9;margin:0 0 25px;color:var(--muted)}
.home-story a{display:inline-flex;align-items:center;gap:40px;font-weight:550;border-bottom:1px solid var(--ink);padding:10px 0;min-height:44px}
.footer{border-top:1px solid var(--line);padding:40px 0;display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.footer p{font-size:15px;font-weight:550;color:var(--ink);margin:0}
.footer-contact{display:flex;flex-wrap:wrap;gap:10px 28px;margin-left:auto;color:var(--muted);font-size:14px}
.footer-contact a{padding:10px 0}
.skip{position:fixed;top:-100px;left:10px;background:white;padding:12px;z-index:100}
.skip:focus{top:0}
.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}
html[lang=en] .brand strong,html[lang=zh-Hans] .brand strong{font-size:20px;letter-spacing:-.025em}
html[lang=en] .main-nav{gap:26px}
html[lang=en] .main-nav a{font-size:14px}
html[lang=en] .hero h1{font-size:clamp(42px,4.4vw,68px);letter-spacing:-.035em;max-width:920px}
html[lang=zh-Hans] .hero h1{letter-spacing:.01em}
@media(max-width:1100px){
 .header{gap:18px}.main-nav{gap:24px}.main-nav a{font-size:14px}
 .brand strong{font-size:21px}.brand img{width:42px}
 html[lang=en] .main-nav{gap:16px}.languages button{padding-inline:7px}
 .home-story>.wrap{gap:50px}
}
@media(max-width:1040px){
 .header{height:88px;padding-inline:6%}.main-nav{display:none}.menu-toggle{display:flex}.mobile-menu{top:88px}
 .hero{height:660px;min-height:0}.hero-copy{width:84%}
 .quick-links>a{gap:14px;padding:28px 18px}.quick-links strong{font-size:17px}.quick-links small{font-size:12px}
 .product-visual{height:210px}
}
@media(max-width:700px){
 :root{--section-space:64px}.wrap{width:88%}
 .header{height:120px;padding:14px 6% 46px;gap:12px}
 .brand strong{font-size:22px}.brand img{width:42px;height:37px}.brand small{font-size:9px}
 .languages{position:absolute;bottom:2px;left:calc(6% - 8px);gap:7px}.languages button{font-size:12px;padding:10px 8px}
 .header-actions{gap:0}.mobile-menu{top:120px}
 .hero{height:auto;min-height:560px;align-items:start}.hero-copy{width:84%;padding:86px 0 105px}
 .hero-photo{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#0a2538bd,#0a253850)}
 .hero h1{font-size:clamp(32px,7.8vw,48px);line-height:1.3}
 .hero-eyebrow{font-size:13px;margin-bottom:22px}
 .hero-description{font-size:15px;max-width:310px;margin-top:24px}
 .hero-cta{font-size:14px;margin-top:28px;min-height:50px}
 .quick-links{grid-template-columns:1fr}
 .quick-links>a,.quick-links>a:first-child,.quick-links>a:last-child{padding:24px 0;min-height:100px;gap:22px}
 .quick-links>a+a{border-left:0;border-top:1px solid var(--line)}
 .quick-links strong{font-size:18px}.quick-links small{font-size:13px}
 .section-heading{margin-bottom:30px}.section-caption{font-size:13px}
 .product-list{grid-template-columns:1fr;gap:32px}.product-visual{height:250px}.product-name{font-size:22px}
 .home-story>.wrap{grid-template-columns:1fr;gap:28px}.home-story p{font-size:16px}
 .footer{padding-block:30px;gap:15px}.footer p{font-size:14px;flex:1}.footer-contact{order:3;flex-basis:100%;margin:0;gap:4px 25px;font-size:13px}
 html[lang=en] .hero h1{font-size:clamp(32px,8vw,46px);line-height:1.23}
 html[lang=en] .brand strong,html[lang=zh-Hans] .brand strong{font-size:19px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
