@charset "utf-8";

.about-intro {display:flex; flex-direction:column; gap:var(--space-60);}
.about-hero {position:relative; overflow:hidden; border-radius:16px; height: 550px; /* height:clamp(280px, calc(550 / var(--inner) * 100vw), 550px);  */padding:var(--space-40); display:flex; align-items:flex-end; justify-content:flex-end;}
.about-hero-bg {position:absolute; inset:0;}
.about-hero-bg img {width:100%; height:100%; object-fit:cover;}
.about-hero-dim {position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.2) 62.364%);}
.about-hero-txt {position:relative; z-index:1; text-align:right; color:#fff;}
.about-hero-txt p {margin:0; font-size:clamp(22px, calc(40 / var(--inner) * 100vw), 40px); line-height:1.45em; letter-spacing:-.03em;}
.about-hero-txt .light {font-weight:400; color:rgba(255,255,255,0.7);}
.about-hero-txt strong {font-weight:700; color:#fff;}
.about-body {display:flex; flex-direction:column; gap:var(--space-40);}
.about-head {display:flex; flex-direction:column; gap:var(--space-30); max-width:707px;}
.about-tit {margin:0; font-size:var(--font-size-48); font-weight:400; line-height:1em; letter-spacing:-.03em; color:#121212;}
.about-tit strong {font-weight:700;}
.about-bar {display:block; width:50px; height:2px; background:var(--color-main);}
.about-text {display:flex; flex-direction:column; gap:var(--space-20); font-size:var(--font-size-20); line-height:1.6em; letter-spacing:-.03em; color:#505050;}
.about-text p {margin:0;}

.directions-wrap {display:flex; align-items:flex-start; justify-content:space-between; gap:clamp(40px, calc(86 / var(--inner) * 100vw), 86px);}
.directions-info {flex-shrink:0; width:clamp(280px, calc(384 / var(--inner) * 100vw), 384px); padding-top:var(--space-20);}
.directions-lead {margin:0 0 clamp(40px, calc(80 / var(--inner) * 100vw), 80px); font-size:var(--font-size-48); font-weight:400; line-height:1.33em; letter-spacing:-.03em; color:#121212;}
.directions-list {display:flex; flex-direction:column; gap:var(--space-40);}
.directions-item {display:flex; flex-direction:column; gap:var(--space-15);}
.directions-label {display:flex; align-items:center; gap:10px; margin:0; font-size:var(--font-size-20); font-weight:700; line-height:1em; letter-spacing:-.03em; color:#121212;}
.directions-value {margin:0; font-size:var(--font-size-20); font-weight:400; line-height:1em; letter-spacing:-.03em; color:#505050;}
.directions-value a {color:#505050; text-decoration:none;}
.directions-icon {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:32px; height:32px; border-radius:99px; background:#121212;}
.directions-icon img {width:16px; height:16px;}
.directions-map {flex:1; min-width:0; max-width:930px; height:clamp(320px, calc(650 / var(--inner) * 100vw), 650px); border-radius:16px; overflow:hidden;}
.directions-map img {width:100%; height:100%; object-fit:cover;}

.root_daum_roughmap,
.root_daum_roughmap .wrap_map {overflow:hidden; height:clamp(250px, calc( 650 / var(--inner) * 100vw ), 650px) !important; width:100% !important;}
.root_daum_roughmap .cont {display:none !important;}

.sol-intro {position:relative; overflow:hidden; padding:clamp(80px, calc(150 / var(--inner) * 100vw), 150px) var(--contain-padding); text-align:center; color:#fff;}
.sol-intro-bg {position:absolute; inset:0;}
.sol-intro-bg img {width:100%; height:100%; object-fit:cover; object-position:center bottom;}
.sol-intro-dim {position:absolute; inset:0; background:rgba(0,0,0,0.4);}
.sol-intro-inner {position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:var(--space-40); max-width:1400px; margin:0 auto;}
.sol-intro-tit {margin:0; font-size:clamp(24px, calc(40 / var(--inner) * 100vw), 40px); font-weight:700; line-height:1em; letter-spacing:-.03em;}
.sol-intro-desc {font-size:var(--font-size-20); line-height:1.6em; letter-spacing:-.03em;}
.sol-intro-desc p {margin:0;}
.sol-page {padding-bottom:clamp(80px, calc(150 / var(--inner) * 100vw), 150px);}
.sol-feature-rows {display:flex; flex-direction:column; gap:10px;}
.sol-card-icon--triple img:nth-child(1) {position:absolute; left:2px; top:50%; transform:translateY(-50%); width:16px; height:auto;}
.sol-card-icon--triple img:nth-child(2) {position:absolute; left:50%; top:4px; transform:translateX(-50%); width:16px; height:auto;}
.sol-card-icon--triple img:nth-child(3) {position:absolute; right:2px; bottom:4px; width:14px; height:auto;}
.sol-process {padding:clamp(60px, calc(100 / var(--inner) * 100vw), 100px) 0;}
.sol-features {padding:clamp(60px, calc(100 / var(--inner) * 100vw), 100px) 0; background:#f4f4f4;}
.sol-benefits {padding:clamp(60px, calc(100 / var(--inner) * 100vw), 100px) 0 0;}
.sol-sec-tit {margin:0 0 var(--space-60); font-size:var(--font-size-32); font-weight:700; line-height:1em; letter-spacing:-.03em; color:#121212; text-align:center;}
.sol-process-fig {margin:0;}
.sol-process-fig img {display:block; width:100%; height:auto;}
.sol-card-grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px;}
.sol-card-grid--center {grid-template-columns:repeat(2, minmax(0, 460px)); justify-content:center;}
.sol-benefit-grid {display:flex; flex-direction:column; gap:10px;}

.sol-card {display:flex; align-items:center; justify-content:center; min-height:120px; padding:var(--space-40); border-radius:8px; background:#fff;}
.sol-card--gray {background:#f4f4f4;}
.sol-card-inner {display:flex; align-items:center; justify-content:center; gap:var(--space-20); width:100%;}
.sol-card-icon {position:relative; flex-shrink:0; width:clamp(26px, calc(40 / var(--inner) * 100vw), 40px); aspect-ratio:1/1; display:flex; align-items:center; justify-content:center;}

.sol-card-tit {margin:0; font-size:clamp(18px, calc(22 / var(--inner) * 100vw), 22px); font-weight:600; line-height:1em; letter-spacing:-.03em; color:#505050; text-align:center;}
.sol-zwcad-block {padding:clamp(60px, calc(100 / var(--inner) * 100vw), 100px) 0 0;}
.sol-zwcad-fig {margin:0;}
.sol-zwcad-fig img {display:block; width:100%; height:auto;}
.sol-page--zwcad-tail {padding-bottom:clamp(80px, calc(150 / var(--inner) * 100vw), 150px);}
.sol-zw3d-features {padding-top:var(--space-20);}
.sol-zw3d-feature-list {display:flex; flex-direction:column; gap:var(--space-20);}
.sol-zw3d-feature {display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-30); padding:var(--space-40); border-radius:8px; background:#f4f4f4;}
.sol-zw3d-feature-tit {margin:0; font-size:var(--font-size-24); font-weight:600; line-height:1em; letter-spacing:-.03em; color:#121212;}
.sol-zw3d-feature-body {display:flex; flex-direction:column; gap:var(--space-15);}
.sol-zw3d-feature-desc {margin:0; font-size:var(--font-size-20); font-weight:400; line-height:1.4em; letter-spacing:-.03em; color:#505050;}
.sol-zw3d-feature-tags {display:flex; flex-wrap:wrap; align-items:center; gap:10px;}
.sol-zw3d-feature-tag {font-size:var(--font-size-16); font-weight:400; line-height:1em; letter-spacing:-.03em; color:#878787;}
.sol-zw3d-feature-sep {flex-shrink:0; width:1px; height:10px; background:#ddd;}

.sol-mobile {display:flex; flex-direction:column; gap:var(--space-80);}
.sol-mobile-cards {display:flex; gap:var(--space-40);}
.sol-mobile-card {flex:1; display:flex; flex-direction:column; align-items:center; gap:var(--space-20); padding:var(--space-40) var(--space-30); border-radius:16px; background:#f4f4f4;}
.sol-mobile-card-body {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); width:100%;}
.sol-mobile-card-visual {overflow:hidden; flex-shrink:0;}
.sol-mobile-card-txt {display:flex; flex-direction:column; align-items:center; gap:var(--space-30); text-align:center;}
.sol-mobile-card-tit {margin:0; font-size:var(--font-size-28); font-weight:600; line-height:1em; letter-spacing:-.03em; color:#121212;}
.sol-mobile-card-desc {font-size:var(--font-size-18); font-weight:400; line-height:1.7em; letter-spacing:-.03em; color:#505050;}
.sol-mobile-card-note {margin:0; font-size:var(--font-size-14); font-weight:400; line-height:1em; letter-spacing:-.03em; color:#878787;}
.sol-mobile-benefit {display:flex; flex-direction:column; gap:var(--space-40);}
.sol-mobile-compare {display:flex; flex-direction:column; gap:var(--space-40);}
.sol-mobile-sec-tit {margin:0; font-size:var(--font-size-28); font-weight:600; line-height:1em; letter-spacing:-.03em; color:#121212;}
.sol-mobile-bar {position:relative; width:100%; height:1px; background:#ddd;}
.sol-mobile-bar::after {content:""; position:absolute; left:0; top:0; width:150px; height:1px; background:#0f2d50;}
.sol-mobile-benefit-body {display:flex; flex-direction:column; gap:var(--space-30);}
.sol-mobile-point-list {display:flex; flex-direction:column; gap:var(--space-25);}
.sol-mobile-point {display:flex; align-items:center; gap:10px;}
.sol-mobile-point-dot {flex-shrink:0; width:4px; height:4px;}
.sol-mobile-point-dot img {display:block; width:100%; height:100%;}
.sol-mobile-point-txt {margin:0; font-size:var(--font-size-18); font-weight:400; line-height:1.4em; letter-spacing:-.03em; color:#505050;}
.sol-mobile-point-txt strong {font-weight:600; color:#121212;}
.sol-mobile-spec {display:flex; flex-direction:column; gap:var(--space-30); padding:var(--space-40); border-radius:8px; background:#f4f4f4;}
.sol-mobile-spec-row {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-20);}
.sol-mobile-spec-item {font-size:var(--font-size-16); font-weight:400; line-height:1.4em; letter-spacing:-.03em; color:#878787;}
.sol-mobile-spec-sep {flex-shrink:0; width:1px; height:10px; background:#ddd;}
.sol-mobile-plans {display:flex; align-items:center; gap:var(--space-40);}
.sol-mobile-plan {flex:1; padding:var(--space-40); border-radius:16px;}
.sol-mobile-plan--free {border:1px solid #ddd; background:#fff;}
.sol-mobile-plan--premium {border:2px solid #0f2d50; background:rgba(94,120,140,0.13);}
.sol-mobile-plan-head {display:flex; align-items:flex-end; gap:10px; margin-bottom:var(--space-35);}
.sol-mobile-plan-tit {margin:0; font-size:var(--font-size-24); font-weight:600; line-height:1em; letter-spacing:-.03em; color:#121212;}
.sol-mobile-plan--premium .sol-mobile-plan-tit {color:#0f2d50;}
.sol-mobile-plan--free .sol-mobile-plan-tit {margin-bottom:var(--space-40);}
.sol-mobile-plan-sub {margin:0; font-size:var(--font-size-18); font-weight:400; line-height:1em; letter-spacing:-.03em; color:#505050;}
.sol-mobile-plan-arrow {flex-shrink:0; width:30px; height:30px;}
.sol-mobile-plan-arrow img {display:block; width:100%; height:100%;}
.sol-mobile-plan-list {display:flex; flex-direction:column;}
.sol-mobile-plan-item {display:flex; align-items:center; gap:var(--space-20); padding:var(--space-20) 0; border-top:1px solid #ddd;}
.sol-mobile-plan-item:first-child {padding-top:0; border-top:0;}
.sol-mobile-plan-item:last-child {padding-bottom:0; border-bottom:0;}
.sol-mobile-plan-check {flex-shrink:0; width:24px; height:24px;}
.sol-mobile-plan-check img {display:block; width:100%; height:100%;}
.sol-mobile-plan-label {font-size:var(--font-size-18); font-weight:400; line-height:1em; letter-spacing:-.03em; color:#505050;}
.sol-mobile-plan-label--bold {font-weight:600; color:#121212;}

.contact-page {display:flex; flex-direction:column; gap:clamp(60px, calc(100 / var(--inner) * 100vw), 100px); max-width:1400px; margin:0 auto;}
.contact-intro {display:flex; align-items:center; gap:clamp(40px, calc(80 / var(--inner) * 100vw), 80px);}
.contact-visual {flex:1; min-width:0; overflow:hidden; border-radius:16px;}
.contact-visual img {overflow:hidden; border-radius:16px;}
.contact-info {flex:1; min-width:0; display:flex; flex-direction:column; gap:var(--space-60); justify-content:center;}
.contact-tit {margin:0; font-size:var(--font-size-48); font-weight:400; line-height:1.33em; letter-spacing:-.03em; color:#121212;}
.contact-tit strong {font-weight:700;}
.contact-bar {position:relative; width:100%; max-width:660px; height:1px; background:#ddd;}
.contact-bar::after {content:""; position:absolute; left:0; top:-1px; width:100px; height:2px; background:var(--color-main);}
.contact-list {display:flex; flex-direction:column; gap:var(--space-20);}
.contact-item {display:flex; align-items:center; gap:12px;}
.contact-icon {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:32px; height:32px; border-radius:16px; background:#eee;}
.contact-icon img {width:20px; height:20px;}
.contact-icon--time img {width:17px; height:16px;}
.contact-txt {display:flex; align-items:center; gap:20px; font-size:var(--font-size-20); line-height:1em; letter-spacing:-.03em;}
.contact-label {margin:0; font-weight:600; color:#121212; min-width:68px;}
.contact-value {margin:0; font-weight:400; color:#505050;}
.contact-value a {color:#505050; text-decoration:none;}

.contact-form {display:flex; flex-direction:column; gap:var(--space-60); align-items:center; width:100%;}
.contact-form-inner {display:flex; flex-direction:column; gap:var(--space-40); width:100%;}
.contact-form .board-form {width:100%;}
.contact-form .board-form table {border-top:2px solid #121212; border-bottom:1px solid #ddd; font-size:var(--font-size-18); line-height:1.5em;}
.contact-form .board-form table th {padding:var(--space-20) var(--space-16); border:1px solid #ddd; border-left:0; background:#f9f9f9; font-size:var(--font-size-18); font-weight:700; color:#121212; text-align:center; vertical-align:middle;}
.contact-form .board-form table td {padding:var(--space-20) var(--space-25); border:1px solid #ddd; border-right:0; vertical-align:middle;}
.contact-form .board-form tr:first-child th,
.contact-form .board-form tr:first-child td {border-top:0;}
.contact-form .board-form tr:last-child th,
.contact-form .board-form tr:last-child td {border-bottom:0;}
.contact-form .board-form .input {height:44px; border-radius:4px; color:#505050;}
.contact-form .board-form textarea.input {height:300px;}
.contact-form .board-form .contact-row-content th {vertical-align:middle;}
.contact-form .board-form .captcha-wrap {height:44px;}
.contact-form .board-form .captcha-wrap .input {width:160px; flex-shrink:0;}

.contact-form .form-agree {width:100%; margin:0;}
.contact-form .form-agree h3 {margin:0 0 10px; font-size:var(--font-size-18); font-weight:700; color:#222; letter-spacing:-.03em; line-height:1.3em;}
.contact-form .form-agree .scroll-box {height:140px; max-height:140px; overflow-y:auto; padding:10px; color:#484848; font-size:14px; line-height:1.43em; letter-spacing:-.03em; background:#fafafa; border:1px solid rgba(221,221,221,0.87); border-radius:4px;}
.contact-form .form-agree .check {margin-top:var(--space-20); text-align:center; color:#484848; font-size:var(--font-size-16); line-height:1.5em;}
.contact-form .form-agree .check a {display:inline-block; margin-left:6px; padding:5px 7px; font-size:12px; font-weight:500; line-height:1; letter-spacing:-.05em; color:#484848; background:#fff; border:1px solid #ddd; text-decoration:none;}
.contact-form .form-agree .checkbox label:before {width:20px; height:20px; border-radius:4px;}
.contact-form .contact-submit-wrap {margin:0; width:100%;}
.contact-form .contact-submit-btn {display:inline-flex; align-items:center; justify-content:center; gap:20px; height:52px; padding:10px 30px; border:0; border-radius:99px; background:var(--color-main); font-size:var(--font-size-16); font-weight:600; line-height:1em; letter-spacing:-.03em; color:#fff; cursor:pointer;}
.contact-form .contact-submit-arrow {display:flex; align-items:center; justify-content:center;}
.contact-form .contact-submit-arrow img {width:10px; height:8px;}