@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--bg:#090c15;--line:rgba(255,255,255,.13);--muted:#9298aa;--white:#f6f6fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans','Noto Sans KR',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-shell{position:relative;min-height:100vh;overflow:hidden;padding:0 clamp(20px,5.4vw,100px)}.ambient{position:absolute;pointer-events:none;border-radius:50%;filter:blur(110px);opacity:.13}.ambient-one{width:620px;height:620px;top:-350px;left:20%;background:#7759ef}.ambient-two{width:580px;height:580px;top:300px;right:-400px;background:#bb6e3e}.topbar{height:100px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{display:inline-flex;align-items:center;gap:14px}.brand-symbol{width:34px;height:30px;display:flex;gap:4px;align-items:end;transform:skew(-15deg)}.brand-symbol span{width:8px;border-radius:2px 2px 0 0;background:#a684ff;height:21px}.brand-symbol span:nth-child(2){height:30px;background:#ffce63}.brand-symbol span:nth-child(3){height:15px;background:#a684ff}.brand-word{font-size:22px;font-weight:800;letter-spacing:-1.2px}.brand-word>span{color:#b49cff}.top-right{display:flex;align-items:center;gap:38px;font-size:10px;letter-spacing:2px;font-weight:700}.top-index{color:#797f93}.status{color:#adb3c8;display:flex;align-items:center;gap:9px}.status i{width:6px;height:6px;border-radius:50%;background:#ddc072;box-shadow:0 0 15px #e7c26d}.hero{padding-top:clamp(70px,10vh,135px);position:relative;z-index:1}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;color:#c2a6fc;display:flex;align-items:center;gap:13px}.eyebrow-line{width:25px;height:2px;background:#c2a6fc}.eyebrow-num{color:#686e83}.hero h1{font-size:clamp(42px,5.5vw,79px);line-height:1.23;letter-spacing:-.055em;margin:26px 0 23px;font-weight:800;word-break:keep-all}.gradient-text{background:linear-gradient(95deg,#c4b0ff,#a9a4fa 40%,#f0c785 98%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-intro{font-size:clamp(14px,1.22vw,17px);line-height:1.9;color:#a2a8bb;letter-spacing:-.025em;margin-bottom:66px}.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:17px}.section-number{font-size:12px;color:#f3f4fa;letter-spacing:1.5px;font-weight:700}.section-number span{margin-left:14px;color:#737b90;font-size:10px}.scroll-guide{color:#838a9c;font-size:11px;letter-spacing:.3px}.down-arrow{font-size:18px;margin-left:14px}.business-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:23px;position:relative;z-index:1}.business-card{position:relative;min-height:490px;border:1px solid rgba(255,255,255,.14);border-radius:11px;overflow:hidden;display:flex;flex-direction:column;isolation:isolate;transition:transform .35s,border-color .35s,box-shadow .35s}.business-card:hover,.business-card:focus-visible{transform:translateY(-8px);border-color:var(--accent);box-shadow:0 24px 70px rgba(0,0,0,.38);outline:none}.parking{--accent:#ad92ff;background:linear-gradient(165deg,#28213d,#131522 70%)}.crane{--accent:#e7bc76;background:linear-gradient(165deg,#353026,#18191c 70%)}.software{--accent:#83d7e7;background:linear-gradient(165deg,#1b3342,#111a23 70%)}.card-glow{position:absolute;top:-120px;left:20%;right:-20%;height:260px;background:radial-gradient(ellipse,var(--accent),transparent 68%);opacity:.13;transition:opacity .35s;z-index:-1}.business-card:hover .card-glow{opacity:.24}.card-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);background-size:27px 27px;mask-image:linear-gradient(transparent,#000 30%,transparent 78%);z-index:-1}.card-head{display:flex;justify-content:space-between;align-items:center;padding:27px 29px 0}.card-number{color:#abb0bd;font-size:10px;letter-spacing:1.7px;font-weight:700}.card-corner{color:var(--accent);font-size:22px}.art{height:214px;display:flex;align-items:center;justify-content:center;padding:12px 9px 0}.art svg{width:100%;max-width:370px;height:100%;filter:drop-shadow(0 12px 24px rgba(0,0,0,.19));transition:transform .4s}.business-card:hover .art svg{transform:scale(1.06) translateY(-5px)}.card-content{padding:0 29px 25px;margin-top:auto}.tag{font-size:9px;letter-spacing:1.7px;color:var(--accent);font-weight:700;margin-bottom:14px}.card-content h2{font-size:clamp(26px,2.65vw,40px);line-height:1.07;letter-spacing:-.055em;font-weight:500;margin:0}.card-content h2 strong{color:var(--accent);font-weight:800}.card-content p{color:#a5a7b4;font-size:12px;line-height:1.9;min-height:48px;margin:21px 0 23px;word-break:keep-all}.card-footer{border-top:1px solid rgba(255,255,255,.15);padding-top:18px;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;letter-spacing:-.2px}.arrow-circle{display:grid;place-items:center;border:1px solid rgba(255,255,255,.23);width:33px;height:33px;border-radius:50%;font-size:19px;transition:background .25s,color .25s}.business-card:hover .arrow-circle{background:var(--accent);color:#0c1020}.statement{text-align:center;padding:74px 0 78px}.statement span{font-weight:800;font-size:11px;letter-spacing:3.3px;color:#9a84d3}.statement p{font-size:17px;font-weight:600;color:#afb3bf;letter-spacing:-.4px}.footer{border-top:1px solid var(--line);min-height:105px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#7f879b;font-size:10px;letter-spacing:1.1px}.footer-brand{color:#d0d1df;font-size:13px;font-weight:800;letter-spacing:1px}.footer-brand span{font-size:9px;color:#7b8190;font-weight:500;margin-left:18px}.footer-right{display:flex;gap:32px}.footer-right a{color:#c5c6d2}.footer-right a span{color:#e7c37c;margin-left:6px}@media(max-width:950px){.business-grid{gap:12px}.business-card{min-height:450px}.card-head{padding:20px 19px 0}.card-content{padding:0 19px 20px}.card-content h2{font-size:29px}.card-content p{font-size:11px}.art{height:185px}}@media(max-width:700px){.site-shell{padding:0 20px}.topbar{height:78px}.brand-word{font-size:20px}.top-index{display:none}.status{font-size:9px;letter-spacing:1px}.hero{padding-top:79px}.hero h1{font-size:clamp(38px,8vw,59px)}.hero-intro{margin-bottom:60px;font-size:13px}.desktop-only{display:none}.business-grid{grid-template-columns:1fr;gap:16px}.business-card{min-height:435px}.art{height:185px}.card-content h2{font-size:36px}.card-content p{font-size:12px}.statement{padding:55px 0}.statement span{font-size:9px;letter-spacing:2.1px}.statement p{font-size:14px}.footer{align-items:flex-start;flex-direction:column;padding:25px 0;gap:16px}.footer-brand span{display:block;margin:8px 0 0}.footer-right{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* v1.1: 화면 내 사업부 3개를 모두 표시하는 무스크롤 포털 */
html,body{min-height:100%;}
.site-shell{height:100svh;min-height:0;display:flex;flex-direction:column;overflow:hidden;}
.site-shell main{display:flex;flex:1;min-height:0;flex-direction:column;position:relative;z-index:1;}
.topbar{height:clamp(46px,7vh,72px);flex:none;}
.brand-logo[hidden]{display:none!important}
.brand-logo img{display:block;max-height:43px;max-width:190px;width:auto;object-fit:contain}
.hero{padding-top:clamp(14px,3vh,35px);flex:none;}
.eyebrow{font-size:10px;letter-spacing:1.8px;}
.hero h1{font-size:clamp(29px,min(4vw,5.2vh),57px);line-height:1.19;margin:clamp(8px,1.3vh,16px) 0 clamp(6px,1vh,12px);}
.hero-intro{font-size:clamp(11px,1vw,14px);line-height:1.55;margin:0 0 clamp(10px,1.6vh,20px);}
.hero-bottom{padding-bottom:9px;}
.business-grid{flex:1;min-height:0;padding-top:clamp(9px,1.5vh,17px);padding-bottom:clamp(8px,1.4vh,14px);}
.business-card{min-height:0;height:100%;}
.card-head{padding:clamp(12px,2vh,20px) 20px 0;}
.art{height:auto;flex:1;min-height:45px;max-height:215px;padding:0 12px;}
.art svg{max-height:100%;}
.card-content{padding:0 20px clamp(13px,1.6vh,20px);}
.card-content h2{font-size:clamp(22px,min(2.7vw,4vh),38px);}
.tag{margin-bottom:clamp(5px,.9vh,10px);font-size:9px;}
.card-content p{font-size:clamp(10px,1vw,12px);line-height:1.5;min-height:0;margin:clamp(7px,1.2vh,14px) 0;}
.card-footer{padding-top:clamp(8px,1.2vh,13px);}
.arrow-circle{width:28px;height:28px;}
.statement{display:none;}
.footer{min-height:clamp(43px,6vh,65px);flex:none;}
@media(max-width:700px){
 .site-shell{padding:0 14px;}
 .topbar{height:48px;}
 .top-right{margin-left:auto;}
 .hero{padding-top:12px;}
 .eyebrow{font-size:8px;gap:7px;letter-spacing:1px;}
 .eyebrow-line{width:14px;}
 .hero h1{font-size:clamp(23px,6vw,34px);margin:8px 0 5px;line-height:1.2;}
 .hero-intro{font-size:10px;margin:0 0 9px;line-height:1.5;}
 .hero-bottom{padding-bottom:7px;}
 .section-number{font-size:10px;}
 .scroll-guide{font-size:9px;}
 .business-grid{grid-template-columns:1fr;grid-template-rows:repeat(3,minmax(0,1fr));gap:7px;padding-top:8px;padding-bottom:8px;}
 .business-card{min-height:0;display:grid;grid-template-columns:minmax(0,35%) minmax(0,65%);grid-template-rows:auto minmax(0,1fr);align-items:center;border-radius:8px;}
 .card-head{grid-column:1/-1;grid-row:1;padding:8px 12px 0;}
 .card-number{font-size:8px;}
 .card-corner{font-size:15px;}
 .art{grid-column:1;grid-row:2;min-height:0;max-height:none;height:100%;padding:0 2px;}
 .card-content{grid-column:2;grid-row:2;padding:0 10px 8px 0;min-width:0;}
 .tag{font-size:7px;letter-spacing:.5px;margin-bottom:4px;}
 .card-content h2{font-size:clamp(16px,4.2vw,24px);line-height:1.04;}
 .card-content p{font-size:9px;line-height:1.3;margin:5px 0;}
 .card-content p br{display:none;}
 .card-footer{font-size:9px;padding-top:5px;}
 .arrow-circle{width:21px;height:21px;font-size:13px;}
 .footer{flex-direction:row;align-items:center;min-height:39px;padding:0;gap:5px;}
 .footer-brand{font-size:10px;}
 .footer-brand span{display:none;}
 .footer-right{width:auto;gap:9px;font-size:8px;}
 .footer-right>span{display:none;}
 .brand-logo img{max-height:32px;max-width:130px;}
}
@media(max-height:650px) and (min-width:701px){
 .topbar{height:43px;}
 .hero{padding-top:9px;}
 .hero h1{font-size:clamp(25px,4.8vh,40px);margin:7px 0 5px;}
 .hero-intro{font-size:11px;margin-bottom:7px;}
 .art{max-height:135px;}
 .card-content p{font-size:10px;margin:5px 0;}
 .card-head{padding-top:8px;}
 .card-content{padding-bottom:9px;}
 .footer{min-height:35px;}
}
@media(max-height:600px) and (max-width:700px){
 .hero-intro{display:none;}
 .hero h1{font-size:21px;}
 .card-content p{display:none;}
 .card-content h2{font-size:16px;}
 .tag{font-size:7px;}
 .footer{min-height:30px;}
}
