/* teamplut.com v6 공통 — 뤼튼 실측: 헤더 68 · 컨테이너 1168 · 뉴스 블록 951 · 서비스 카드 320×320 r24 · 푸터 393 */
:root{--ink:#333;--ink2:#1a1a1a;--g:#858e95;--g9:#999;--sky:#2B7FF2;--card:#f5f5f5;
  --sans:"Pretendard Variable",Pretendard,-apple-system,system-ui,sans-serif;--en:"Manrope","Pretendard Variable",sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:#fff;line-height:1.6;word-break:keep-all;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.w1168{width:1168px;margin:0 auto}.en{font-family:var(--en)}
/* 헤더 */
.hdr{position:fixed;inset:0 0 auto 0;height:68px;z-index:80;color:var(--ink);transition:background-color .3s,color .3s}
.hdr .in{position:relative;width:1168px;margin:0 auto;height:68px;display:flex;align-items:center}
.hdr.bg{background:#fff}
.logo{font-family:var(--en);font-weight:800;font-size:26px;letter-spacing:-.045em;display:inline-flex;align-items:center;gap:.36em;line-height:1;height:28px}
.logo .sym{width:22px;height:22px;flex:0 0 auto}
.hdr nav{position:absolute;left:50%;transform:translateX(-50%);top:0;height:68px;display:flex;align-items:center;gap:40px;font-size:16px;font-weight:500;letter-spacing:-.16px;line-height:24px}
.hdr nav a{transition:opacity .2s;position:relative}.hdr nav a:hover{opacity:.6}.hdr nav a.on:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:currentColor;border-radius:1px}
.hdr .kr{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:16px;font-weight:500;letter-spacing:-.16px}
.hdr .kr svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}
.burger{display:none;width:40px;height:40px;margin-left:auto;place-items:center}
.burger i{display:block;width:22px;height:2px;background:currentColor;box-shadow:0 -7px 0 currentColor,0 7px 0 currentColor}
/* 알약 버튼 */
.pill{display:inline-flex;align-items:center;justify-content:center;height:56px;padding:0 50px;border-radius:40px;background:rgba(255,255,255,.9);backdrop-filter:blur(17px);color:var(--ink);font-weight:600;font-size:16px;letter-spacing:-.16px;transition:background .25s}
.pill:hover{background:#fff}
/* 주요 소식 블록 */
.news{height:951px;padding-top:151px;background:#fff}
.news h2{font-size:38px;font-weight:600;letter-spacing:-.76px;line-height:1.35;margin-bottom:15px;color:var(--ink)}
.news .grid{display:flex;gap:16px;align-items:stretch}
.news .big{position:relative;width:789px;height:592px;border-radius:24px;overflow:hidden;background:#0b0b0d;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:0 32px 32px;isolation:isolate}
.news .big .bgp{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s ease}.news .big:hover .bgp{transform:scale(1.03)}
.news .big .art .bm{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);font-family:var(--en);font-weight:800;font-size:150px;letter-spacing:-.06em;line-height:1;color:#fff;white-space:nowrap;text-align:center}
.news .big .art .bm i{display:inline-block;width:.3em;height:.3em;background:#fff;border-radius:.03em;margin-left:.06em}
.news .big .art .bm b{display:block;font-family:var(--sans);font-size:22px;font-weight:500;letter-spacing:-.02em;color:#b9bec8;margin-bottom:10px}
.news .big .art .ring{position:absolute;right:-18%;top:-30%;width:70%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 120px rgba(90,110,160,.25)}
.news .big:after{content:"";position:absolute;inset:auto 0 0 0;height:300px;background:linear-gradient(to top,rgba(47,47,47,.95),rgba(47,47,47,0));z-index:-1}
.news .big small{font-size:20px;font-weight:500;letter-spacing:-.2px;line-height:28px;color:rgba(255,255,255,.65)}
.news .big b{display:block;font-size:34px;font-weight:600;letter-spacing:-.68px;line-height:1.4;margin:7px 0 25px;max-width:600px}
.news .big .dt{font-size:16px;font-weight:500;letter-spacing:-.16px;color:rgba(255,255,255,.65);display:flex;justify-content:space-between;align-items:center}
.news .big .dots{display:flex;gap:6px;align-items:center}.news .big .dots i{width:8px;height:8px;border-radius:4px;background:rgba(255,255,255,.35)}.news .big .dots i.on{width:48px;background:#fff}
.news .small{display:flex;flex-direction:column;gap:16px;width:363px}
.news .sc{background:var(--card);border-radius:24px;padding:20px 24px 24px;height:187px;display:flex;flex-direction:column;justify-content:space-between;transition:background .2s}
.news .sc:hover{background:#ebebeb}
.news .sc small{display:block;font-size:16px;font-weight:500;letter-spacing:-.16px;line-height:24px;color:var(--g9);margin-bottom:6px}
.news .sc p{font-size:20px;font-weight:600;line-height:28px;letter-spacing:-.2px;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news .sc .m{font-size:14px;font-weight:500;letter-spacing:-.14px;color:var(--g9);display:flex;gap:8px}.news .sc .m i{font-style:normal}
/* 서비스 카드 320×320 (뤼튼 service-card): p32 · 제목 28/700 · 설명 16/500 #999 · 화살표 · 워터마크, hover 연한 색 */
.svc{width:320px;height:320px;border-radius:24px;background:var(--card);padding:32px;display:flex;flex-direction:column;justify-content:space-between;flex:0 0 auto;transition:background .3s;position:relative}
.svc:hover{background:var(--hov,#e7f0f7)}
.svc .tt{display:flex;align-items:center;justify-content:space-between;width:100%}
.svc h3{font-size:28px;font-weight:700;color:var(--ink);letter-spacing:-.28px;line-height:1.5}
.svc .ar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#333;opacity:0;transform:translateX(-6px);transition:.3s;background:#fff}.svc:hover .ar{opacity:1;transform:none}.svc .ar svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.svc .ds{margin-top:16px;font-size:16px;font-weight:500;color:var(--g9);letter-spacing:-.16px;line-height:1.5;flex:1}
.svc .wm{font-weight:800;font-size:22px;letter-spacing:-.04em;color:#c9c9c9;transition:color .3s}.svc:hover .wm{color:#333}
/* 푸터 */
.foot{background:#1a1a1a;color:#fff;padding:60px 0 77px;position:relative;z-index:10}
.foot .top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:100px}
.foot .logo{height:40px;font-size:30px;color:#fff}.foot .logo .sym{width:26px;height:26px}
.foot nav{display:flex;gap:32px;font-size:16px;font-weight:500;color:var(--g);line-height:28.8px}.foot nav a:hover{color:#fff}
.foot .co{font-size:16px;font-weight:500;color:var(--g);line-height:24px}.foot .co a{text-decoration:underline;text-underline-offset:3px}
.foot .cp{margin-top:24px;font-size:14px;font-weight:500;color:var(--g);opacity:.3;line-height:20px;display:flex;gap:32px}
/* 등장 */
[data-animate]{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}
[data-animate].animate-in{opacity:1;transform:none}
@media(min-width:1024px) and (max-width:1439px){.hdr .in,.w1168{width:min(1168px,100% - 40px)}.news .big{width:calc(100% - 379px)}}
@media(max-width:1023px){
  .w1168{width:min(1168px,100% - 40px)}
  .hdr{height:60px}.hdr .in{width:100%;padding:0 20px;height:60px}.hdr nav,.hdr .kr{display:none}.burger{display:grid}
  .hdr.open nav{display:flex;position:fixed;inset:60px 0 auto 0;flex-direction:column;gap:0;background:#fff;color:#333;padding:8px 20px 20px;border-bottom:1px solid #eee;transform:none;left:0;height:auto;align-items:stretch}
  .hdr.open nav a{padding:16px 12px;font-size:18px;letter-spacing:-.36px;border-radius:8px}.hdr.open nav a.on:after{display:none}
  .news{height:auto;padding:80px 20px 40px}.news .w1168{width:100%}.news h2{font-size:28px;letter-spacing:-.56px;margin-bottom:16px}.news .grid{flex-direction:column}.news .big{width:100%;height:auto;aspect-ratio:789/592;padding:0 22px 22px}.news .big .art .bm{font-size:70px}.news .big .art .bm b{font-size:14px}.news .big b{font-size:22px;margin:4px 0 14px}.news .big small{font-size:15px}.news .small{width:100%}.news .sc{height:auto;min-height:150px;gap:16px}
  .svc{width:100%;min-width:0;height:auto;aspect-ratio:1;padding:20px;border-radius:12px}.svc h3{white-space:normal}.svc h3{font-size:20px}.svc .ds{font-size:14px;margin-top:12px}.svc .wm{font-size:16px}
  .foot{padding:40px 20px}.foot .w1168{width:100%}.foot .top{flex-direction:column;gap:16px;margin-bottom:40px}.foot nav{flex-wrap:wrap;gap:4px 22px}.foot .co{font-size:14px}.foot .cp{flex-direction:column;gap:4px}
}
