@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap');

:root{--bg:#06080b;--panel:#0d1116;--panel2:#121820;--line:#28313b;--muted:#8996a3;--text:#f4f7fa;--ice:#79ddff;--ice2:#d7f6ff;--white:#fff;--max:1280px;--nav:82px;font-family:'Noto Sans KR',sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-size:16px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(var(--max),calc(100% - 64px));margin:auto}.site-header{position:sticky;z-index:50;top:0;height:var(--nav);border-bottom:1px solid #ffffff18;background:#06080bed;backdrop-filter:blur(18px)}.nav-wrap{height:100%;display:flex;align-items:center}.logo{display:flex;align-items:center;gap:12px;font:700 20px 'DM Sans',sans-serif;letter-spacing:2.4px}.logo-mark{width:27px;height:27px;border:1px solid var(--ice);display:grid;place-items:center;transform:rotate(45deg)}.logo-mark::after{content:'';width:9px;height:9px;background:var(--ice)}.logo span:last-child{color:var(--ice)}.main-nav{display:flex;align-items:center;gap:34px;margin-left:auto}.main-nav a{position:relative;padding:31px 0 27px;color:#aeb7c0;font-size:14px;font-weight:600}.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a.active::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ice)}.nav-cta{margin-left:32px;padding:12px 18px;border:1px solid var(--ice);color:var(--ice);font-size:13px;font-weight:700}.nav-cta:hover{background:var(--ice);color:#061016}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;color:#fff;font-size:25px}.eyebrow{color:var(--ice);font:600 12px 'DM Sans',sans-serif;letter-spacing:2.5px;text-transform:uppercase}.display{font-size:clamp(54px,6.5vw,104px);line-height:.98;letter-spacing:-.065em;margin:25px 0}.section-title{margin:16px 0 0;font-size:clamp(36px,4vw,58px);line-height:1.13;letter-spacing:-.045em}.lead{color:#b6c0ca;font-size:18px;line-height:1.8}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:0 24px;border:1px solid var(--ice);background:var(--ice);color:#051017;font-weight:800}.button::after{content:'↗';font-size:17px}.button:hover{background:var(--ice2);border-color:var(--ice2)}.button.ghost{background:transparent;color:#fff;border-color:#ffffff50}.button.ghost:hover{border-color:#fff}.button.ghost::after{content:'→'}.page-hero{padding:105px 0 75px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 82% 20%,#15354666,transparent 28%),linear-gradient(180deg,#0c1117,#06080b)}.page-hero .lead{max-width:680px;margin:30px 0 0}.page-index{font:600 11px 'DM Sans',sans-serif;color:#697785;letter-spacing:2px}.home-hero{position:relative;min-height:calc(100vh - var(--nav));overflow:hidden;display:flex;align-items:center;background:#030608}.home-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#030608 0 27%,#030608d9 43%,transparent 74%),linear-gradient(0deg,#030608d9,transparent 35%)}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-content{position:relative;z-index:2;width:min(760px,67%);padding:80px 0}.hero-content .display span{display:block;color:var(--ice)}.hero-content .lead{max-width:530px}.hero-actions{display:flex;gap:12px;margin-top:40px}.hero-status{position:absolute;z-index:3;left:0;right:0;bottom:0;border-top:1px solid #ffffff24;background:#05080cad}.hero-status-grid{display:grid;grid-template-columns:repeat(3,1fr)}.status-item{padding:18px 26px;border-right:1px solid #ffffff20}.status-item small{display:block;color:var(--ice);font:600 10px 'DM Sans';letter-spacing:2px}.status-item strong{display:block;margin-top:6px;font-size:14px}.home-services{padding:115px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-head p{max-width:480px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:310px;padding:30px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(145deg,#10151b,#080b0f);transition:.25s}.service-card:hover{background:#111923;transform:translateY(-5px);box-shadow:0 20px 45px #0008}.service-card .num{color:var(--ice);font:500 11px 'DM Sans';letter-spacing:2px}.service-card h3{margin:90px 0 15px;font-size:24px}.service-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}.service-card .arrow{display:block;margin-top:30px;color:var(--ice)}.proof-band{padding:28px 0;border-block:1px solid var(--line);background:#0b1015}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof{padding:15px 28px;border-right:1px solid var(--line)}.proof:last-child{border-right:0}.proof strong{display:block;font:700 33px 'DM Sans';color:var(--ice)}.proof span{display:block;margin-top:7px;color:#9aa6b1;font-size:13px}.content-section{padding:105px 0}.content-section.alt{background:#0a0e13}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.image-frame{position:relative;overflow:hidden;border:1px solid #ffffff21;background:#10151b}.image-frame::before{content:'';position:absolute;z-index:1;inset:16px;border:1px solid #ffffff2c;pointer-events:none}.image-frame img{display:block;width:100%;height:100%;object-fit:cover}.ratio-wide{aspect-ratio:4/3}.copy-list{margin:38px 0 0;padding:0;list-style:none}.copy-list li{display:grid;grid-template-columns:104px 1fr;gap:20px;align-items:baseline;padding:22px 0;border-top:1px solid var(--line)}.copy-list b{color:var(--ice);font:600 11px 'DM Sans';letter-spacing:1.5px;white-space:nowrap}.copy-list strong{font-size:18px}.copy-list p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.7}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.value-card{min-height:290px;padding:30px;border:1px solid var(--line);background:var(--panel)}.value-card i{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ice);color:var(--ice);font-style:normal}.value-card h3{margin:70px 0 12px;font-size:22px}.value-card p{color:var(--muted);font-size:14px;line-height:1.75}.process-line{counter-reset:step;display:grid;grid-template-columns:repeat(5,1fr);margin-top:50px;border-top:1px solid var(--line)}.process-line article{counter-increment:step;position:relative;padding:34px 24px;border-right:1px solid var(--line)}.process-line article::before{content:'0' counter(step);color:var(--ice);font:600 11px 'DM Sans';letter-spacing:2px}.process-line h3{margin:55px 0 12px;font-size:18px}.process-line p{color:var(--muted);font-size:13px;line-height:1.65}.package-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:50px}.package{position:relative;min-height:410px;padding:35px;border:1px solid var(--line);background:linear-gradient(145deg,#121922,#090c10)}.package.featured{border-color:#79ddff88;background:linear-gradient(145deg,#12232c,#090c10)}.package-tag{display:inline-block;padding:7px 10px;background:#18212a;color:var(--ice);font:600 10px 'DM Sans';letter-spacing:1.5px}.package h2{margin:32px 0 9px;font-size:34px}.package .duration{color:var(--muted);font-size:13px}.package ul{margin:28px 0 35px;padding:0;list-style:none}.package li{padding:9px 0;color:#c5cdd5;font-size:14px}.package li::before{content:'✓';margin-right:11px;color:var(--ice)}.package .from{position:absolute;right:34px;bottom:34px;text-align:right}.package .from small{display:block;color:var(--muted)}.package .from strong{font:700 28px 'DM Sans'}.case-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:50px}.case-card{position:relative;min-height:470px;overflow:hidden;border:1px solid var(--line)}.case-card:nth-child(3){grid-column:1/-1;min-height:370px}.case-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.case-card:hover img{transform:scale(1.035)}.case-card::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#040608e8,transparent 65%)}.case-info{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}.case-info small{color:var(--ice);font:600 11px 'DM Sans';letter-spacing:1.5px}.case-info h3{margin:9px 0 0;font-size:25px}.case-info p{margin:8px 0 0;color:#acb8c2;font-size:13px}.filter-row{display:flex;gap:8px;margin-top:36px}.filter-row button{padding:10px 15px;border:1px solid var(--line);background:transparent;color:#9ba6b0}.filter-row button.active,.filter-row button:hover{border-color:var(--ice);color:var(--ice)}.price-tabs{display:flex;gap:8px;margin-top:45px}.price-tabs button{padding:13px 20px;border:1px solid var(--line);background:#0a0e13;color:#aeb7c0}.price-tabs button.active{background:var(--ice);border-color:var(--ice);color:#051017;font-weight:800}.price-table{width:100%;margin-top:18px;border-collapse:collapse;border-top:1px solid var(--ice)}.price-table th,.price-table td{padding:22px 20px;border-bottom:1px solid var(--line);text-align:left}.price-table th{color:#83909b;font-size:12px;font-weight:500}.price-table td{font-size:14px}.price-table td:first-child{font-weight:700;font-size:16px}.price-table td:last-child{font:700 18px 'DM Sans';color:var(--ice)}.price-note{margin-top:22px;color:#75818c;font-size:13px;line-height:1.8}.booking-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:60px}.booking-summary{position:sticky;top:115px;align-self:start;padding:34px;border:1px solid var(--line);background:var(--panel)}.booking-summary h2{margin:0 0 30px;font-size:25px}.summary-row{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);color:#9ca7b0;font-size:14px}.summary-row strong{color:#fff}.estimate{margin-top:28px}.estimate small{display:block;color:#87929c}.estimate strong{display:block;margin-top:8px;color:var(--ice);font:700 38px 'DM Sans'}.form-panel{padding:40px;border:1px solid var(--line);background:#0b0f14}.form-section{padding:0 0 34px;margin-bottom:34px;border-bottom:1px solid var(--line)}.form-section:last-of-type{border:0}.form-section h3{margin:0 0 22px;font-size:19px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}.field label{color:#aab4bd;font-size:13px}.field input,.field select,.field textarea{width:100%;border:1px solid #34404b;background:#080b0f;color:#fff;padding:15px;outline:0}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ice)}.field textarea{min-height:125px;resize:vertical}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.option{position:relative}.option input{position:absolute;opacity:0}.option label{display:block;padding:17px;border:1px solid #34404b;color:#b6c0c9;cursor:pointer}.option input:checked+label{border-color:var(--ice);background:#11252d;color:#fff}.agree{display:flex;gap:10px;align-items:flex-start;color:#89959f;font-size:13px;line-height:1.6}.submit{width:100%;margin-top:24px}.form-success{display:none;padding:22px;border:1px solid #79ddff66;background:#0e222a;color:#d7f6ff;margin-top:20px}.form-success.show{display:block}.site-footer{padding:55px 0 38px;border-top:1px solid var(--line);background:#040609}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px}.footer-grid h4{margin:0 0 14px;color:#84909a;font-size:12px}.footer-grid p{margin:6px 0;color:#b4bec7;font-size:13px}.footer-copy{display:flex;justify-content:space-between;margin-top:45px;padding-top:24px;border-top:1px solid #ffffff13;color:#66727d;font-size:11px}

@media(max-width:980px){.main-nav{display:none;position:absolute;left:0;right:0;top:var(--nav);padding:18px 32px 28px;background:#06080bf7;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0}.main-nav.open{display:flex}.main-nav a{width:100%;padding:14px 0}.main-nav a.active::after{display:none}.nav-cta{display:none}.menu-toggle{display:block}.hero-content{width:85%}.service-grid{grid-template-columns:repeat(2,1fr)}.proof-grid{grid-template-columns:repeat(2,1fr)}.proof:nth-child(2){border-right:0}.split,.booking-layout{grid-template-columns:1fr}.booking-summary{position:static}.value-grid{grid-template-columns:1fr}.process-line{grid-template-columns:1fr 1fr}.package-grid{grid-template-columns:1fr}.case-grid{grid-template-columns:1fr}.case-card:nth-child(3){grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){:root{--nav:68px}.wrap{width:min(100% - 36px,var(--max))}.logo{font-size:16px}.home-hero{min-height:760px;align-items:flex-start}.home-hero::after{background:linear-gradient(180deg,#030608 0 25%,#030608c9 60%,#030608 100%)}.hero-media img{object-position:66% center}.hero-content{width:100%;padding-top:85px}.display{font-size:52px}.hero-actions{flex-direction:column;align-items:stretch}.hero-status-grid{grid-template-columns:1fr}.status-item:nth-child(n+2){display:none}.home-services,.content-section{padding:80px 0}.section-head{display:block}.section-head p{margin-top:22px}.service-grid,.proof-grid,.form-grid,.option-grid{grid-template-columns:1fr}.proof{border-right:0}.process-line{grid-template-columns:1fr}.case-card,.case-card:nth-child(3){min-height:380px}.form-panel{padding:24px}.price-table th:nth-child(2),.price-table td:nth-child(2){display:none}.price-table th,.price-table td{padding:17px 10px}.page-hero{padding:75px 0 55px}.footer-grid{grid-template-columns:1fr}.footer-copy{display:block}.footer-copy span{display:block;margin-top:9px}}
/* category page slide */
html[data-direction="forward"]{--page-in:5vw;--page-out:-4vw;--page-clip:inset(0 100% 0 0)}html[data-direction="back"]{--page-in:-5vw;--page-out:4vw;--page-clip:inset(0 0 0 100%)}
html{overflow-x:hidden}.page-slide-layer{position:fixed;z-index:1000;inset:0;overflow:hidden;background:var(--bg);pointer-events:none;transform:translateX(0);clip-path:inset(0);transition:transform .48s cubic-bezier(.55,0,.2,1),clip-path .48s cubic-bezier(.55,0,.2,1)}.page-slide-layer>div{width:100%;min-height:100vh;background:var(--bg)}.page-slide-layer.is-active{transform:translateX(var(--page-out));clip-path:var(--page-clip)}body.page-slide-in{transform:translateX(var(--page-in));transition:transform .48s cubic-bezier(.55,0,.2,1)}body.page-slide-in.is-active{transform:translateX(0)}

/* softer cold palette */
:root{--bg:#0a1016;--panel:#111922;--panel2:#16212b;--line:#2b3945;--muted:#93a0aa;--text:#e7edf1;--ice:#78bdd2;--ice2:#bfe2eb;--white:#edf3f5}
body{background:radial-gradient(circle at 85% 10%,#14212b 0,transparent 32%),var(--bg)}
.site-header{background:#0a1016f2;border-bottom-color:#ffffff12}.main-nav a:hover,.main-nav a.active{color:#edf3f5}.nav-cta{border-color:#78bdd2;color:#9bd1df}.nav-cta:hover{background:#78bdd2;color:#0a1419}
.home-hero{background:#080d12}.home-hero::after{background:linear-gradient(90deg,#080d12 0 27%,#080d12d9 43%,transparent 74%),linear-gradient(0deg,#080d12dc,transparent 35%)}
.page-hero{background:radial-gradient(circle at 82% 20%,#1c3a4960,transparent 30%),linear-gradient(180deg,#111820,#0a1016)}
.display,.section-title,.service-card h3,.package h2,.case-info h3,.booking-summary h2,.form-section h3{color:#e5ebef}.lead{color:#aeb9c2}.eyebrow{color:#86c5d8}.button{background:#78bdd2;border-color:#78bdd2;color:#071217}.button:hover{background:#9ed0dd;border-color:#9ed0dd}.button.ghost{color:#e1e8ec;border-color:#ffffff3d}
.content-section.alt,.proof-band{background:#0d141b}.service-card{background:linear-gradient(145deg,#131b23,#0c1218)}.service-card:hover{background:#17222c}.package{background:linear-gradient(145deg,#16212b,#0c1218)}.package.featured{background:linear-gradient(145deg,#16303a,#0c1218)}
.site-footer{background:#080d12}.field input,.field select,.field textarea{background:#0c1218}.form-panel{background:#0e151c}.filter-row button,.price-tabs button{background:#0c1218}
@media(max-width:980px){.main-nav{background:#0a1016fa}}
@media(max-width:640px){.home-hero::after{background:linear-gradient(180deg,#080d12 0 25%,#080d12c9 60%,#080d12 100%)}}

@media(max-width:640px){.copy-list li{grid-template-columns:88px 1fr;gap:14px}}
