/* Shared services and installation details. Scoped file; no product-site overrides. */
:root{--ink:#171917;--muted:#626761;--line:#d7dbd4;--paper:#fff;--wash:#f0f2ed;--gutter:clamp(20px,4vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Sora,"Noto Sans KR",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,dl,dd{margin:0}a:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}a:hover .arrow{transform:translate(3px,-3px)}.arrow{display:inline-block;transition:transform .2s ease;font-weight:400}.wrap{width:min(calc(100% - var(--gutter)*2),1560px);margin-inline:auto}.skip{position:absolute;left:16px;top:-100px;z-index:100;background:#fff;padding:16px}.skip:focus{top:8px}
.mast{border-bottom:1px solid var(--line);background:#fff}.mast-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:20px}.brand b{font-family:Arial,sans-serif;letter-spacing:-.09em;font-size:46px;font-weight:800;line-height:1}.brand span{font-size:10px;line-height:1.5;letter-spacing:.035em;max-width:170px;color:var(--muted)}.main-nav{display:flex;gap:30px;align-items:center;font-size:12px;font-weight:600;letter-spacing:.025em}.main-nav a{display:flex;align-items:center;min-height:44px;position:relative}.main-nav [aria-current]::after{position:absolute;bottom:5px;left:0;right:0;height:2px;background:var(--ink);content:""}.main-nav a:hover{text-decoration:underline;text-underline-offset:6px}
.kicker{font-size:11px;font-weight:500;letter-spacing:.16em;line-height:1.6;text-transform:uppercase;color:var(--muted)}.hub-intro{padding-block:54px 32px}.hub-title-row{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:40px;margin-top:16px}.hub-title-row h1{font-size:clamp(66px,8.3vw,134px);font-weight:500;line-height:1;letter-spacing:-.075em}.intro-copy{max-width:580px;padding-bottom:6px}.intro-copy h2{font-size:clamp(23px,2.1vw,33px);font-weight:500;letter-spacing:-.055em;line-height:1.45;word-break:keep-all}.intro-copy p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:14px;word-break:keep-all}.jump-bar{position:sticky;top:0;z-index:8;border-block:1px solid var(--line);background:rgba(255,255,255,.98)}.jump-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}.jump-links{display:flex;gap:36px}.jump-links a{min-height:62px;display:flex;align-items:center;gap:12px;font-size:13px}.jump-links span{font-size:10px;color:var(--muted)}.jump-links a:hover{text-decoration:underline;text-underline-offset:6px}.jump-note{color:var(--muted);font-size:11px}
.hub-cover{padding-top:24px}.hub-cover .photo{width:100%;height:clamp(260px,37vw,590px);object-fit:cover;object-position:50% 33%}.caption{display:flex;justify-content:space-between;gap:20px;margin-top:12px;font-size:11px;color:var(--muted);line-height:1.7}.caption a{border-bottom:1px solid #c5cac2}.caption a:hover{color:var(--ink)}.section{padding-block:88px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:36px}.section-head h2{font-size:clamp(30px,3.5vw,54px);font-weight:500;letter-spacing:-.065em;line-height:1.2;margin-top:10px;word-break:keep-all}.section-head>p{max-width:420px;color:var(--muted);line-height:1.8;font-size:14px;word-break:keep-all}.construction-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.service-card{min-width:0;border-top:1px solid var(--ink);padding-top:15px}.card-top{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:14px}.card-top .kicker{font-size:10px;letter-spacing:.07em}.card-top .arrow{font-size:22px}.service-photo{aspect-ratio:4/3;width:100%;object-fit:cover;object-position:center 30%;background:var(--wash)}.service-caption{font-size:10px;color:var(--muted);line-height:1.6;margin-top:8px}.service-card h3{font-size:clamp(23px,2.4vw,33px);font-weight:500;letter-spacing:-.055em;margin-top:22px;line-height:1.3}.service-card .card-copy{font-size:14px;line-height:1.8;color:var(--muted);word-break:keep-all;margin-top:12px;max-width:36ch}.text-link{display:inline-flex;min-height:44px;align-items:center;justify-content:space-between;gap:28px;font-size:12px;font-weight:500;border-bottom:1px solid var(--ink);margin-top:18px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.service-card>a{display:block}.service-card>a:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}.service-more{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--line);margin-top:38px;padding-top:20px;color:var(--muted);font-size:13px}.service-more .text-link{margin:0;color:var(--ink)}
.product-section{background:var(--wash)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.product-card{min-width:0}.product-media{background:#fff;aspect-ratio:1/1.06;overflow:hidden;display:flex;align-items:center;justify-content:center}.product-media img{width:100%;height:100%;object-fit:cover}.product-media.contain{padding:18px}.product-media.contain img{object-fit:contain;mix-blend-mode:multiply}.product-name{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:19px}.product-name h3{font-size:clamp(18px,1.75vw,27px);font-weight:500;letter-spacing:-.045em;line-height:1.25}.product-name .arrow{font-size:23px}.product-card p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:9px;word-break:keep-all}.product-card small{display:block;font-size:10px;line-height:1.6;color:var(--muted);margin-top:8px}.product-card a:hover h3{text-decoration:underline;text-underline-offset:6px}.product-bottom{display:flex;justify-content:space-between;gap:28px;align-items:center;padding-top:32px;margin-top:32px;border-top:1px solid #cbd0c6}.product-bottom p{max-width:650px;color:var(--muted);font-size:13px;line-height:1.8;word-break:keep-all}.product-bottom .text-link{margin:0;white-space:nowrap}
.consult-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:70px}.consult-title h2{font-size:clamp(28px,3vw,44px);font-weight:500;letter-spacing:-.05em;line-height:1.4;margin-top:12px;word-break:keep-all}.consult-title p:last-child{margin-top:18px;font-size:14px;line-height:1.8;color:var(--muted);word-break:keep-all}.prep-list{display:grid;gap:0}.prep-item{display:grid;grid-template-columns:32px 1fr;gap:16px;padding:21px 0;border-top:1px solid var(--line)}.prep-item:first-child{border-top:1px solid var(--ink);padding-top:21px}.prep-item .num{font-size:11px;color:var(--muted);padding-top:4px}.prep-item h3{font-size:17px;font-weight:500;letter-spacing:-.035em}.prep-item p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:7px;word-break:keep-all}.contact-band{background:var(--ink);color:#fff;padding:42px;margin-top:42px;display:flex;justify-content:space-between;align-items:center;gap:26px}.contact-band h2{font-size:clamp(22px,2.5vw,35px);font-weight:400;letter-spacing:-.05em;line-height:1.4;word-break:keep-all}.contact-band p{color:#c7ccc3;font-size:12px;margin-top:9px;line-height:1.7}.contact-links{display:flex;gap:20px;flex-wrap:wrap}.contact-links a{display:flex;align-items:center;min-height:48px;font-size:13px;border-bottom:1px solid #787e74;white-space:nowrap}.contact-band a:focus-visible{outline-color:#fff}.foot{border-top:1px solid var(--line);padding-block:34px 40px}.foot-top{display:flex;justify-content:space-between;gap:24px;align-items:start}.foot-name{font-size:13px;line-height:1.8;font-weight:500}.foot-copy{font-size:11px;line-height:1.8;color:var(--muted);margin-top:8px}.foot-links{display:flex;gap:28px;font-size:12px;flex-wrap:wrap}.foot-links a{min-height:44px;display:flex;align-items:center}.foot a:hover{text-decoration:underline;text-underline-offset:4px}.copyright{font-size:10px;letter-spacing:.025em;color:var(--muted);margin-top:26px}
.crumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;line-height:1.6;color:var(--muted);padding-top:26px}.crumbs a:hover{text-decoration:underline}.detail-hero{display:grid;grid-template-columns:.84fr 1.16fr;gap:60px;padding-block:48px 42px;align-items:center}.detail-title h1{font-size:clamp(38px,4.7vw,68px);font-weight:500;line-height:1.17;letter-spacing:-.065em;word-break:keep-all;margin-top:18px}.detail-title .lead{margin-top:26px;font-size:clamp(18px,1.7vw,25px);line-height:1.6;letter-spacing:-.045em;word-break:keep-all;max-width:30ch}.detail-title .summary{margin-top:15px;font-size:14px;line-height:1.9;word-break:keep-all;color:var(--muted);max-width:42ch}.detail-actions{display:flex;flex-wrap:wrap;gap:8px 24px}.detail-hero figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center 30%}.detail-hero.small-photo{grid-template-columns:1.2fr .8fr}.detail-hero.small-photo figure{max-width:490px;justify-self:end}.detail-hero.small-photo figure img{aspect-ratio:auto;object-fit:contain}.detail-switch{border-block:1px solid var(--line);background:var(--wash)}.detail-switch .wrap{display:flex;gap:28px;overflow-x:auto}.detail-switch a{min-height:58px;display:flex;align-items:center;font-size:12px;white-space:nowrap}.detail-switch a[aria-current]{font-weight:600;text-decoration:underline;text-underline-offset:7px}.scope-section{display:grid;grid-template-columns:1fr 1.35fr;gap:70px}.scope-heading h2{font-size:clamp(28px,3.2vw,44px);font-weight:500;line-height:1.35;letter-spacing:-.055em;margin-top:12px;word-break:keep-all}.scope-heading>p:last-child{font-size:14px;color:var(--muted);line-height:1.9;word-break:keep-all;margin-top:20px}.scope-list>div{border-top:1px solid var(--line);padding:23px 0;display:grid;grid-template-columns:130px 1fr;gap:24px}.scope-list>div:first-child{border-color:var(--ink)}.scope-list dt{font-size:16px;font-weight:500;line-height:1.7}.scope-list dd{font-size:14px;color:var(--muted);line-height:1.9;word-break:keep-all}.case-strip{border-block:1px solid var(--line);background:var(--wash);padding:32px;display:grid;grid-template-columns:240px 1fr auto;gap:32px;align-items:center}.case-strip img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.case-strip h2{font-size:26px;line-height:1.4;font-weight:500;letter-spacing:-.04em;margin-top:8px}.case-strip .case-copy{font-size:13px;line-height:1.8;color:var(--muted);margin-top:10px;word-break:keep-all}.case-strip .text-link{margin:0;white-space:nowrap}.related-products{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:36px;border-bottom:1px solid var(--line);padding-bottom:25px}.related-products p{font-size:14px;color:var(--muted);line-height:1.8;word-break:keep-all}.related-products .text-link{margin:0;white-space:nowrap}.transition-page{min-height:65vh;display:grid;align-content:center;gap:18px;padding-block:70px}.transition-page h1{font-size:clamp(32px,6vw,72px);font-weight:500;letter-spacing:-.055em;line-height:1.25}.transition-page p{font-size:16px;color:var(--muted);line-height:1.8}.transition-page a{justify-self:start}
@media(min-width:1800px){.construction-grid{gap:38px}.product-grid{gap:32px}}
@media(max-width:1000px){.brand span{display:none}.main-nav{gap:24px}.hub-title-row{grid-template-columns:1fr 1fr;gap:26px}.jump-note{display:none}.section{padding-block:64px}.section-head>p{max-width:340px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.product-media{aspect-ratio:5/4}.product-media.contain{padding:26px}.product-name h3{font-size:25px}.consult-grid,.scope-section{gap:36px}.detail-hero{gap:34px;grid-template-columns:.95fr 1.05fr}.detail-title h1{font-size:46px}.case-strip{grid-template-columns:200px 1fr;gap:24px}.case-strip>.text-link{grid-column:2;justify-self:start}.contact-band{padding:32px}.service-card h3{font-size:25px}.service-card .card-copy{font-size:13px}}
@media(max-width:700px){:root{--gutter:20px}.mast-inner{min-height:76px;gap:16px}.brand b{font-size:39px}.main-nav{gap:16px;font-size:10px}.hub-intro{padding-block:36px 27px}.hub-title-row{grid-template-columns:1fr;gap:22px;margin-top:14px}.hub-title-row h1{font-size:clamp(60px,15vw,96px)}.intro-copy{padding-bottom:0;max-width:500px}.intro-copy h2{font-size:24px}.intro-copy p{font-size:13px;margin-top:11px}.jump-links{width:100%;gap:0;justify-content:space-between}.jump-links a{font-size:12px;gap:7px;min-height:53px}.jump-links span{font-size:9px}.hub-cover{padding-top:18px}.hub-cover .photo{height:auto;aspect-ratio:4/3;object-position:center 30%}.caption{font-size:10px;gap:12px}.caption span{max-width:66%}.section{padding-block:54px}.section-head{display:block;margin-bottom:27px}.section-head h2{font-size:33px;margin-top:8px}.section-head>p{max-width:unset;margin-top:17px;font-size:13px}.construction-grid{grid-template-columns:1fr;gap:34px}.service-card{display:grid;grid-template-columns:1fr;gap:0}.card-top{margin-bottom:12px}.service-photo{aspect-ratio:3/2}.service-card h3{font-size:29px;margin-top:17px}.service-card .card-copy{max-width:unset;font-size:14px;margin-top:8px}.service-caption{margin-top:7px}.service-card .text-link{margin-top:12px}.service-more{align-items:start;flex-direction:column;gap:8px;margin-top:30px;font-size:12px}.product-grid{gap:32px 16px}.product-media{aspect-ratio:1/1.2}.product-media.contain{padding:10px}.product-name{gap:6px;align-items:start;margin-top:15px}.product-name h3{font-size:20px}.product-name .arrow{font-size:20px}.product-card p{font-size:12px;line-height:1.7}.product-card small{font-size:9px}.product-bottom{align-items:start;flex-direction:column;gap:16px;padding-top:24px;margin-top:30px}.product-bottom p{font-size:12px}.consult-grid,.scope-section{grid-template-columns:1fr;gap:26px}.consult-title h2,.scope-heading h2{font-size:30px}.consult-title p:last-child{font-size:13px;margin-top:12px}.contact-band{padding:26px 23px;display:block;margin-top:28px}.contact-links{margin-top:19px;gap:24px}.contact-band h2{font-size:25px}.foot-top{display:block}.foot-links{gap:18px;margin-top:18px;font-size:11px}.foot{padding-block:28px}.detail-hero{grid-template-columns:1fr;gap:26px;padding-block:32px}.detail-title h1{font-size:43px;margin-top:15px}.detail-title .lead{font-size:22px;line-height:1.55;margin-top:19px;max-width:unset}.detail-title .summary{font-size:13px;margin-top:12px;max-width:unset}.detail-hero.small-photo{grid-template-columns:1fr}.detail-hero.small-photo figure{max-width:100%;justify-self:stretch}.detail-hero figure img{aspect-ratio:4/3}.detail-hero.small-photo figure img{max-width:490px;aspect-ratio:auto}.detail-switch .wrap{gap:25px}.detail-switch a{font-size:11px;min-height:52px}.scope-heading>p:last-child{font-size:13px;margin-top:15px}.scope-list>div{grid-template-columns:1fr;gap:9px;padding:20px 0}.scope-list dt{font-size:17px}.scope-list dd{font-size:13px}.case-strip{grid-template-columns:110px 1fr;padding:20px;gap:16px}.case-strip img{aspect-ratio:1/1}.case-strip h2{font-size:20px;margin-top:5px}.case-strip .kicker{font-size:9px}.case-strip .case-copy{grid-column:1/-1;font-size:12px}.case-strip>.text-link{font-size:11px;gap:14px}.related-products{display:block;margin-top:27px;padding-bottom:22px}.related-products p{font-size:13px}.related-products .text-link{margin-top:10px}.crumbs{font-size:10px;padding-top:20px}.prep-item h3{font-size:16px}}
@media(max-width:375px){:root{--gutter:16px}.main-nav{gap:12px;font-size:9px}.brand b{font-size:36px}.hub-title-row h1{font-size:61px}.intro-copy h2{font-size:22px}.product-grid{gap:28px 12px}.product-name h3{font-size:18px}.jump-links a{font-size:11px}.jump-links span{font-size:8px}.contact-links{gap:15px}.contact-links a{font-size:12px}.detail-title h1{font-size:39px}.detail-switch .wrap{gap:21px}.case-strip{padding:17px;grid-template-columns:90px 1fr;gap:14px}.case-strip h2{font-size:18px}}
.caption span{word-break:keep-all;text-wrap:pretty}
@media(max-width:700px){.detail-switch .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;overflow:visible}.detail-switch a{justify-content:center;text-align:center;white-space:normal;word-break:keep-all;font-size:11px;line-height:1.55;min-height:54px}.detail-switch a:first-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.arrow{transition:none}}
