You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

495 lines
29 KiB

:root{
--header-height:96px;
--color-primary:#1a1f5e;
--color-primary-hover:#141852;
--color-primary-light:#2d3380;
--color-primary-soft:rgba(26,31,94,.07);
--color-primary-soft-strong:rgba(26,31,94,.11);
--color-primary-soft-border:rgba(26,31,94,.14);
--color-primary-border:rgba(26,31,94,.18);
--color-primary-border-strong:rgba(26,31,94,.22);
--color-primary-shadow:rgba(26,31,94,.16);
/* ── 브랜드 팔레트 ── */
--navy:#1a1f5e;
--pink:#d94889;
--pink-light:#e58fb5;
--purple:#7b3fa0;
--sky:#198dc7;
--grad-brand:linear-gradient(135deg,#d94889 0%,#7b3fa0 40%,#1a1f5e 75%,#198dc7 100%);
--grad-brand-h:linear-gradient(90deg,#d94889 0%,#7b3fa0 50%,#1a1f5e 100%);
}
html{scrollbar-gutter:inherit;}
body{overflow-x:hidden;}
.main-layout{min-height:calc(100vh - var(--header-height));padding-top:var(--header-height);}
.sub-layout{min-height:calc(100vh - var(--header-height));padding-top:var(--header-height);}
/*sh4 subhero*/
.sh4 {
position: relative;
overflow: hidden;
margin-top: calc(-1 * var(--header-height));
padding: calc(var(--header-height) + 80px) 80px 96px;
}
/* .sh4{position:relative;overflow:hidden;margin-top:calc(-1 * var(--header-height));padding:calc(var(--header-height) + 80px) 80px 96px;background:#fff;} */
.sh4-inner{position:relative;z-index:2;max-width:1440px;margin:0 auto;}
.sh4-right{position:relative;height:100%;min-height:320px;}
.sh4-label{display:block;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(26,31,94,.38);margin-bottom:20px;opacity:0;transform:translateY(10px);animation:sh4Up .55s cubic-bezier(.16,1,.3,1) forwards;}
.sh4-title{margin:0 0 20px;font-size:clamp(40px,6vw,80px);font-weight:900;line-height:1.25;letter-spacing:-.055em;color:var(--navy);}
.sh4-title em{padding-right:1rem;font-size:7rem;font-style:normal;background:var(--grad-brand-h);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.sh4-title-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em;}
.sh4-title-line-inner{display:block;}
.sh4-desc{font-size:clamp(14px,1.2vw,17px);line-height:1.8;color:rgba(26,31,94,.42);word-break:keep-all;margin:0;opacity:0;transform:translateY(12px);animation:sh4Up .6s .5s cubic-bezier(.16,1,.3,1) forwards;}
.sh4-breadcrumb {display:flex; align-items:center; gap:6px; margin-bottom:16px;}
.sh4-breadcrumb-item {font-size:13px; font-weight:500; color:#888; text-decoration:none; display:flex; align-items:center; transition:color .2s;}
.sh4-breadcrumb-item:hover {color:var(--color-primary);}
.sh4-breadcrumb-item--active {color:#333; pointer-events:none;}
.sh4-breadcrumb-sep {font-size:12px; color:#ccc;}
/*sh4 split*/
.sh4--split .sh4-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
/*sh4 sticky 탭 네비*/
/* .sh4-nav-wrap{position:sticky;top:var(--header-height);z-index:50;background:rgba(255,255,255,.98);backdrop-filter:blur(16px) saturate(180%);border-bottom:1px solid rgba(26,31,94,.08);box-shadow:0 1px 0 rgba(26,31,94,.06);} */
.sh4-nav-wrap{border-bottom:1px solid rgba(26,31,94,.08);box-shadow:0 1px 0 rgba(26,31,94,.06);}
.sh4-nav{max-width:1440px;margin:0 auto;display:flex;align-items:center;}
.sh4-nav-tab{position:relative;display:inline-flex;align-items:center;height:52px;padding:0 20px;font-size:14px;font-weight:600;color:rgba(17,17,17,.38);text-decoration:none;transition:color .25s;white-space:nowrap;letter-spacing:-.01em;}
.sh4-nav-tab:hover{color:var(--navy);}
.sh4-nav-tab--active{color:var(--navy);}
.sh4-nav-tab--active::after{content:"";position:absolute;bottom:0;left:20px;right:20px;height:2px;border-radius:999px;background:var(--grad-brand-h);}
/*floating keywords*/
.fk-wrap{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.fk-item{position:absolute;font-weight:700;letter-spacing:.04em;color:var(--navy);white-space:nowrap;user-select:none;}
@keyframes sh4Up{
to{opacity:1;transform:translateY(0);}
}
@media (max-width:1280px){
.sh4{padding-left:48px;padding-right:48px;}
.sh4-nav{padding-left:48px;padding-right:48px;}
}
@media (max-width:1024px){
.sh4{padding-left:32px;padding-right:32px;}
.sh4-nav{padding-left:32px;padding-right:32px;}
.sh4--split .sh4-inner{grid-template-columns:1fr;gap:0;}
.sh4-right{display:none;}
}
@media (max-width:768px){
.sh4{padding:calc(var(--header-height) + 48px) 20px 20px;}
.sh4-nav{padding-left:20px;padding-right:20px;}
.sh4-nav-tab{padding:0 14px;font-size:13px;}
.sh4-title em{font-size:4rem}
}
@media (max-width:1280px){.ab3-stats{padding-left:48px;padding-right:48px;}}
@media (max-width:1024px){
.ab3-stats{padding-left:32px;padding-right:32px;}
.ab3-stats-grid{grid-template-columns:repeat(2,1fr);}
.ab3-si{padding-bottom:40px;}
.ab3-si:nth-child(2){border-right:0;}
.ab3-si:nth-child(3){border-top:1px solid rgba(26,31,94,.06);padding-left:0;}
.ab3-si:nth-child(4){border-top:1px solid rgba(26,31,94,.06);border-right:0;}
}
@media (max-width:768px){
.ab3-stats{padding:80px 20px;}
.ab3-si{padding-right:20px;}
.ab3-si:not(:first-child){padding-left:20px;}
}
/*ab about page*/
.ab-eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(26,31,94,.35);margin-bottom:40px;}
.ab-eyebrow--light{color:rgba(255,255,255,.3);}
/* ── Partners Page ── */
.partners-wrap {margin-top:-5rem;padding: 0 0 6rem 0; }
.partners-title-block { padding: 5rem 0 3.5rem; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 0.75rem; }
.partners-title-main { font-size: clamp(18px, 2vw, 24px); font-weight: 700; color: #333; letter-spacing: -0.01em; line-height: 1.5; }
.partners-title-main em { font-style: normal; font-weight: 700; color: #333; background: none; }
.partners-title-desc { font-size: 13px; color: #bbb; line-height: 1.8; letter-spacing: 0.02em; }
.partners-section-row { display: grid; grid-template-columns: 180px 1fr; gap: 3rem; align-items: start; padding: 80px 0; border-top: 1px solid #e8e8e8; }
.partners-section-row:first-of-type { border-top: none; }
.partners-sidebar { display: flex; flex-direction: column; gap: 6px; padding-top: 4px;}
.partners-eyebrow { font-size: 12px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: #888; }
.partners-heading { font-size: 32px; font-weight: 800; color: #111; letter-spacing: -0.04em; line-height: 1.15; margin-top: 6px; }
.partners-count { font-size: 13px; font-weight: 500; color: #999; margin-top: 8px; }
.partners-grid { display: grid; border: 1px solid #e8e8e8; border-radius: 16px; overflow: hidden; }
.partners-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.partners-grid--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.partners-logo-cell { display: flex; align-items: center; justify-content: center; padding: 1.75rem 1.5rem; min-height: 100px; border-right: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8; transition: background 0.15s ease; }
.partners-grid--4 .partners-logo-cell:nth-child(4n) { border-right: none; }
.partners-grid--4 .partners-logo-cell:nth-last-child(-n+4) { border-bottom: none; }
.partners-grid--5 .partners-logo-cell:nth-child(5n) { border-right: none; }
.partners-grid--5 .partners-logo-cell:nth-last-child(-n+5) { border-bottom: none; }
.partners-logo-cell img { max-width: 75%; max-height: 28px; width: auto; height: auto; object-fit: contain;transition:0.3s all;}
.partners-logo-cell img:hover{transform: scale(1.1);transition:0.3s all;}
.cta-box { position: relative; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 24px; padding: 48px 56px; border-radius: 24px; overflow: hidden; background: var(--color-primary); }
.cta-bg { position: absolute; inset: 0; background-size: 75%; background-position: right 100%; background-repeat: no-repeat; opacity: 0.28; mask-image: linear-gradient(to right, transparent 20%, black 70%); -webkit-mask-image: linear-gradient(to right, transparent 20%, black 70%); }
.cta-content { position: relative; z-index: 1; }
.cta-eyebrow { margin: 0 0 8px; font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: rgba(255,255,255,.65); }
.cta-title { margin: 0; font-size: clamp(22px,2.2vw,30px); font-weight: 800; color: #fff; letter-spacing: -.03em; line-height: 1.25; }
.cta-btn { position: relative; z-index: 1; display: inline-flex; align-items: center; height: 52px; padding: 0 28px; background: #fff; border-radius: 999px; font-size: 15px; font-weight: 700; color: var(--color-primary); text-decoration: none; white-space: nowrap; letter-spacing: -.01em; flex-shrink: 0; }
@media (max-width: 768px) {
.partners-wrap {margin-top:-2rem; padding: 0 0 4rem 0; }
.partners-title-block { padding: 3rem 0 2rem; text-align: left; align-items: flex-start; }
.partners-section-row { grid-template-columns: 1fr; gap: 1.5rem; padding: 2.5rem 0;}
.partners-count { margin-top: 0; }
.partners-heading-row {display: flex; align-items: end; justify-content: center; gap: 10px;}
.partners-sidebar { position: static; flex-direction: column; align-items: flex-start; gap: 4px; }
.partners-heading { font-size:24px; }
.partners-heading br { display: none; }
.partners-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.partners-grid--4 .partners-logo-cell:nth-child(4n) { border-right: 1px solid #e8e8e8; }
.partners-grid--4 .partners-logo-cell:nth-last-child(-n+4) { border-bottom: 1px solid #e8e8e8; }
.partners-grid--4 .partners-logo-cell:nth-child(2n) { border-right: none; }
.partners-grid--4 .partners-logo-cell:nth-last-child(-n+2) { border-bottom: none; }
.partners-grid--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.partners-grid--5 .partners-logo-cell:nth-child(5n) { border-right: 1px solid #e8e8e8; }
.partners-grid--5 .partners-logo-cell:nth-last-child(-n+5) { border-bottom: 1px solid #e8e8e8; }
.partners-grid--5 .partners-logo-cell:nth-child(3n) { border-right: none; }
.partners-grid--5 .partners-logo-cell:nth-last-child(-n+3) { border-bottom: none; }
.cta-box { padding: 32px 28px; }
.cta-bg { background-size: cover; background-position: center; mask-image: linear-gradient(to bottom, transparent 0%, black 40%); -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 40%); }
}
/* ── Location Page ── */
.location-wrap { display: grid; grid-template-columns: 1fr 340px; gap: 4rem; align-items: start; }
.location-map { width: 100%; height: 520px; border-radius: 20px; overflow: hidden; }
.location-map iframe { width: 100%; height: 100%; border: none; display: block; }
.location-info-card { display: flex; flex-direction: column; top: 100px; }
.location-info-card h3 { font-size: 12px; font-weight: 700; color: #bbb; letter-spacing: 0.12em; text-transform: uppercase; margin: 0 0 32px; }
.location-info-list { list-style: none; margin: 0 0 auto; padding: 0; display: flex; flex-direction: column; gap: 24px; }
.location-info-item { display: flex; flex-direction: column; gap: 4px; }
.location-info-label { font-size: 11px; font-weight: 600; color: #bbb; letter-spacing: 0.1em; text-transform: uppercase; }
.location-info-value { cursor: default; font-size: 14px; font-weight: 500; color: #111; text-decoration: none; line-height: 1.6; }
.location-hours { border-top: 1px solid #ebebeb; padding-top: 20px; margin-top: 28px; margin-bottom: 20px; }
.location-hours-eyebrow { margin: 0 0 8px; font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: rgba(17,17,17,.35); }
.location-hours-label { margin: 0; font-size: 15px; font-weight: 700; color: #111; letter-spacing: -0.02em; line-height: 1.6; }
.location-hours-text { font-size: 13px; font-weight: 400; color: #bbb; }
.location-inquiry-btn { display: flex; align-items: center; justify-content: center; height: 50px; background: var(--color-primary); border-radius: 12px; font-size: 15px; font-weight: 700; color: #fff; text-decoration: none; letter-spacing: -.01em; transition: opacity .2s; }
.location-transport { padding-top: 40px; padding-bottom: 6rem; }
.location-transport-title { font-size: 16px; font-weight: 700; color: #111; letter-spacing: -0.03em; margin: 0 0 20px; }
.location-transport-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.location-transport-item { display: flex; flex-direction: column; gap: 12px; padding: 24px 20px; border-radius: 16px; background: #fff; border: 1px solid #e8e8e8; }
.location-transport-item-top { display: flex; align-items: center; justify-content: space-between; }
.location-transport-icon { width: 52px; height: 52px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.location-transport-icon img { width: 26px; height: 26px; object-fit: contain; }
.location-transport-item:nth-child(1) .location-transport-icon { background: #c850c0; }
.location-transport-item:nth-child(2) .location-transport-icon { background: #8b5cf6; }
.location-transport-item:nth-child(3) .location-transport-icon { background: #4158d0; }
.location-transport-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 52px; height: 24px; padding: 0 10px; border-radius: 6px; font-size: 11px; font-weight: 700; letter-spacing: 0.05em; color: #fff; }
.location-transport-item:nth-child(1) .location-transport-badge { background: #c850c0; }
.location-transport-item:nth-child(2) .location-transport-badge { background: #8b5cf6; }
.location-transport-item:nth-child(3) .location-transport-badge { background: #4158d0; }
.location-transport-text { font-size: 13px; color: #777; line-height: 1.7; }
@media (max-width: 768px) {
.location-wrap { grid-template-columns: 1fr; gap: 2rem; }
.location-map { height: 260px; }
.location-info-card { position: static; }
.location-transport-list { grid-template-columns: 1fr; }
.location-transport { padding-bottom: 4rem; }
}
/*연혁*/
/* ── Inner Wrap (공통 max-width) ── */
.inner-wrap {max-width:1440px; margin:0 auto; padding:0 60px;}
/* ── 상단 타이틀 ── 공통 */
.ht-header {text-align:center; padding:80px 0;}
.ht-header-title {font-size:48px; font-weight:500; letter-spacing:-.04em; color:#000; line-height:1.3; margin-bottom:0;}
.ht-header-title em {display:inline-block; font-size:60px; font-style:normal;}
.ht-header-title span {color:var(--color-primary); font-weight:700;}
.ht-header-title b {font-weight:700;}
.ht-header-sub {display:inline-block; margin-top:28px; font-size:16px; letter-spacing:-.03em; color:#666; font-weight:500; line-height:1.7; font-style:normal;}
/* ── 연혁 카드 박스 ── */
.ht-card {background:#f7f8fc; border-radius:20px; padding:52px 48px 80px; margin-bottom:80px;}
/* ── Tabs ── */
.ht-tabs {display:flex; gap:16px; margin-bottom:52px;align-items:center;justify-content:center;}
.ht-tab {flex:1;max-width:400px;font-size:14px; font-weight:600; padding:9px 26px; border-radius:100px; border:1.5px solid var(--color-primary-border); background:transparent; color:#888; cursor:pointer; transition:all .25s; letter-spacing:.01em;}
.ht-tab:hover {border-color:var(--color-primary); color:var(--color-primary);}
.ht-tab.is-active {background:var(--color-primary); border-color:var(--color-primary); color:#fff;}
/* ── Panel ── */
.ht-panel {display:flex; gap:0 40px; align-items:start; width:fit-content; margin:0 auto;min-width:670px}
/* ── Sidebar ── */
.ht-sidebar {padding-top:4px;min-width:155px}
.ht-decade {font-size:52px; font-weight:800; color:#111; line-height:1; letter-spacing:-.03em;}
.ht-since { font-size:11px; font-weight:500; color:#aaa; letter-spacing:.08em; text-transform:uppercase; margin-top:8px;}
/* ── 중앙 1px 라인 ── */
.ht-line-col {position:relative; align-self:stretch; width:1px;}
.ht-line-bg {position:absolute; inset:0; background:var(--color-primary-soft-border); width:1px;}
.ht-line-fill {position:absolute; top:0; left:0; width:1px; height:100%; background:var(--color-primary);}
/* ── Content ── */
.ht-content {padding-top:0;}
/* ── Year Group ── */
.ht-group {position:relative; padding:0 0 72px 0;}
.ht-group:last-child {padding-bottom:0;}
/* ── Dot ── */
.ht-dot {position:absolute; left:-44px; top:12px; width:8px; height:8px; border-radius:50%; background:#f7f8fc; border:1.5px solid var(--color-primary-border); transition:background .35s, border-color .35s, transform .35s; z-index:1;}
.ht-dot.is-active {background:var(--color-primary); border-color:var(--color-primary); transform:scale(1.4);}
/* ── Year ── */
.ht-year {font-size:40px; font-weight:800; letter-spacing:-.03em; line-height:1; margin:0 0 18px 0;}
/* ── List ── */
.ht-list {list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:9px;}
/* ── Item ── */
.ht-item {display:flex; gap:10px; align-items:baseline;}
.ht-bullet {width:3px; height:3px; border-radius:50%; background:var(--color-primary); opacity:.4; flex-shrink:0; position:relative; top:-2px;}
.ht-text {font-size:14px; color:#444; line-height:1.65; word-break:keep-all;}
/* ── Responsive ── */
@media (max-width: 900px) {
.inner-wrap {padding: 0 20px;}
.ht-header {padding: 48px 0 32px;}
.ht-header-title {font-size: 32px;}
.ht-header-title em{font-size:40px}
.ht-card {padding: 32px 20px 56px;border-radius: 12px;}
.ht-panel {flex-direction:column;gap: 0;min-width:auto}
.ht-sidebar {margin-bottom: 32px;min-width:auto;}
.ht-line-col {display: none;}
.ht-content {padding-left: 20px;border-left: 1px solid var(--color-primary-soft-border);}
.ht-dot {left: -24px;}
.ht-decade {font-size: 36px;}
.ht-year {font-size: 26px;}
}
/*연혁*/
/* ── Inner Wrap (공통 max-width) ── */
.inner-wrap {max-width:1440px; margin:0 auto; padding:0 60px;}
/* ── 상단 타이틀 ── 공통 */
.ht-header {text-align:center; padding:80px 0;}
.ht-header-title {font-size:48px; font-weight:500; letter-spacing:-.04em; color:#000; line-height:1.3; margin-bottom:0;}
.ht-header-title em {display:inline-block; font-size:60px; font-style:normal;}
.ht-header-title span {color:var(--color-primary); font-weight:700;}
.ht-header-title b {font-weight:700;}
.ht-header-sub {display:inline-block; margin-top:28px; font-size:16px; letter-spacing:-.03em; color:#666; font-weight:500; line-height:1.7; font-style:normal;}
/* ── 연혁 카드 박스 ── */
.ht-card {background:#f7f8fc; border-radius:20px; padding:52px 48px 80px; margin-bottom:80px;}
/* ── Tabs ── */
.ht-tabs {display:flex; gap:16px; margin-bottom:52px;align-items:center;justify-content:center;}
.ht-tab {flex:1;max-width:400px;font-size:14px; font-weight:600; padding:9px 26px; border-radius:100px; border:1.5px solid var(--color-primary-border); background:transparent; color:#888; cursor:pointer; transition:all .25s; letter-spacing:.01em;}
.ht-tab:hover {border-color:var(--color-primary); color:var(--color-primary);}
.ht-tab.is-active {background:var(--color-primary); border-color:var(--color-primary); color:#fff;}
/* ── Panel ── */
.ht-panel {display:flex; gap:0 40px; align-items:start; width:fit-content; margin:0 auto;min-width:670px}
/* ── Sidebar ── */
.ht-sidebar {padding-top:4px;min-width:155px}
.ht-decade {font-size:52px; font-weight:800; color:#111; line-height:1; letter-spacing:-.03em;}
.ht-since { font-size:11px; font-weight:500; color:#aaa; letter-spacing:.08em; text-transform:uppercase; margin-top:8px;}
/* ── 중앙 1px 라인 ── */
.ht-line-col {position:relative; align-self:stretch; width:1px;}
.ht-line-bg {position:absolute; inset:0; background:var(--color-primary-soft-border); width:1px;}
.ht-line-fill {position:absolute; top:0; left:0; width:1px; height:100%; background:var(--color-primary);}
/* ── Content ── */
.ht-content {padding-top:0;}
/* ── Year Group ── */
.ht-group {position:relative; padding:0 0 72px 0;}
.ht-group:last-child {padding-bottom:0;}
/* ── Dot ── */
.ht-dot {position:absolute; left:-44px; top:12px; width:8px; height:8px; border-radius:50%; background:#f7f8fc; border:1.5px solid var(--color-primary-border); transition:background .35s, border-color .35s, transform .35s; z-index:1;}
.ht-dot.is-active {background:var(--color-primary); border-color:var(--color-primary); transform:scale(1.4);}
/* ── Year ── */
.ht-year {font-size:40px; font-weight:800; letter-spacing:-.03em; line-height:1; margin:0 0 18px 0;}
/* ── List ── */
.ht-list {list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:9px;}
/* ── Item ── */
.ht-item {display:flex; gap:10px; align-items:baseline;}
.ht-bullet {width:3px; height:3px; border-radius:50%; background:var(--color-primary); opacity:.4; flex-shrink:0; position:relative; top:-2px;}
.ht-text {font-size:14px; color:#444; line-height:1.65; word-break:keep-all;}
/* ── Responsive ── */
@media (max-width: 900px) {
.inner-wrap {padding: 0 20px;}
.ht-header {padding: 48px 0 32px;}
.ht-header-title {font-size: 32px;}
.ht-header-title em{font-size:40px}
.ht-card {padding: 32px 20px 56px;border-radius: 12px;}
.ht-panel {flex-direction:column;gap: 0;min-width:auto}
.ht-sidebar {margin-bottom: 32px;min-width:auto;}
.ht-line-col {display: none;}
.ht-content {padding-left: 20px;border-left: 1px solid var(--color-primary-soft-border);}
.ht-dot {left: -24px;}
.ht-decade {font-size: 36px;}
.ht-year {font-size: 26px;}
}
/* ── Inquiry ── */
.inq-wrap{margin-bottom:60px}
.inq-head {padding:80px 0 40px 0;}
.inq-title {font-size:32px; font-weight:800; color:#111; letter-spacing:-.02em; margin-bottom:12px;}
.inq-desc {font-size:15px; color:#666; line-height:1.7;}
/* ── Form ── */
.inq-grid {display:grid; grid-template-columns:1fr 1fr; gap:20px 24px;}
.inq-field {display:flex; flex-direction:column; gap:8px;}
.inq-field--full {grid-column:1 / -1;}
.inq-label {font-size:13px; font-weight:600; color:#333;}
.inq-label em {color:var(--color-primary); font-style:normal;}
.inq-input {height:48px; border:1.5px solid var(--color-primary-soft-border); border-radius:8px; padding:0 14px; font-size:14px; color:#111; outline:none; transition:border-color .2s; background:#fff;}
.inq-input:focus {border-color:var(--color-primary);}
.inq-input::placeholder {color:#bbb;}
.inq-textarea {height:160px; border:1.5px solid var(--color-primary-soft-border); border-radius:8px; padding:14px; font-size:14px; color:#111; outline:none; transition:border-color .2s; background:#fff; resize:vertical;}
.inq-textarea:focus {border-color:var(--color-primary);}
.inq-textarea::placeholder {color:#bbb;}
/* ── Bottom ── */
.inq-bottom {margin-top:28px; display:flex; align-items:center; justify-content:space-between; gap:16px;}
.inq-agree {display:flex; align-items:center; gap:12px;}
.inq-check {display:flex; align-items:center; gap:8px; cursor:pointer; font-size:14px; color:#444;}
.inq-check input {accent-color:var(--color-primary); width:16px; height:16px;}
.inq-privacy-btn {font-size:13px; color:#aaa; text-decoration:underline; background:none; border:none; cursor:pointer; padding:0;}
.inq-privacy-btn:hover {color:var(--color-primary);}
.inq-submit {height:48px; padding:0 40px; background:var(--color-primary); color:#fff; border:none; border-radius:8px; font-size:15px; font-weight:600; cursor:pointer; transition:background .2s;}
.inq-submit:hover {background:var(--color-primary-hover);}
/* ── Responsive ── */
@media (max-width: 768px) {
.inq-grid {
grid-template-columns: 1fr;
}
.inq-bottom {
flex-direction: column;
align-items: flex-start;
}
.inq-submit {
width: 100%;
}
.inq-title{font-size:24px}
.inq-head {padding:48px 0 32px}
}
/* ── Recruit ── */
.rc-head {padding:80px 0 40px 0}
.rc-title {font-size:32px; font-weight:800; color:#111; letter-spacing:-.02em; line-height:1.25; margin-bottom:16px;}
.rc-desc {font-size:15px; color:#666; line-height:1.7;}
/* ── Section Title ── */
.rc-section-title {font-size:20px; font-weight:700; color:#111; letter-spacing:-.01em; margin-bottom:28px;}
/* ── Benefits ── */
.rc-benefits {padding-bottom:72px; border-bottom:1px solid var(--color-primary-soft-border);}
.rc-benefits-grid {display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
.rc-benefit-item {background:#f7f8fc; border-radius:12px; padding:24px 20px; display:flex; flex-direction:column; gap:8px;}
.rc-benefit-icon {font-size:24px;}
.rc-benefit-title {font-size:14px; font-weight:700; color:#111;}
.rc-benefit-desc {font-size:13px; color:#666; line-height:1.5;}
/* ── Jobs ── */
.rc-jobs {padding:56px 0 100px;}
.rc-jobs-grid {display:grid; grid-template-columns:repeat(2,1fr); gap:20px;}
.rc-job-card {background:#fff; border:1.5px solid var(--color-primary-soft-border); border-radius:16px; padding:28px 32px; display:flex; flex-direction:column; gap:12px; transition:border-color .2s, box-shadow .2s;}
.rc-job-card:hover {border-color:var(--color-primary); box-shadow:0 4px 20px var(--color-primary-shadow);}
.rc-job-top {display:flex; gap:8px;}
.rc-job-part {font-size:12px; font-weight:600; color:var(--color-primary); background:var(--color-primary-soft); padding:3px 10px; border-radius:100px;}
.rc-job-type {font-size:12px; font-weight:600; color:#666; background:#f0f0f0; padding:3px 10px; border-radius:100px;}
.rc-job-title {font-size:22px; font-weight:800; color:#111; letter-spacing:-.02em;}
.rc-job-career {font-size:13px; color:#888; font-weight:500;}
.rc-job-desc {font-size:14px; color:#555; line-height:1.6;}
.rc-job-stack {display:flex; flex-wrap:wrap; gap:6px;}
.rc-job-tag {font-size:12px; font-weight:500; color:#555; background:#f5f5f5; padding:4px 10px; border-radius:6px;}
.rc-job-bottom {display:flex; align-items:center; justify-content:space-between; margin-top:4px; padding-top:16px; border-top:1px solid var(--color-primary-soft);}
.rc-job-deadline {font-size:13px; color:#aaa;}
.rc-job-apply {font-size:14px; font-weight:600; color:#fff; background:var(--color-primary); padding:9px 22px; border-radius:8px; text-decoration:none; transition:background .2s;}
.rc-job-apply:hover {background:var(--color-primary-hover);}
/* ── Responsive ── */
@media (max-width: 1024px) {
.rc-benefits-grid {
grid-template-columns: repeat(3, 1fr);
}
}
@media (max-width: 768px) {
.rc-head {
padding: 48px 0 32px;
}
.rc-title {
font-size: 24px;
}
.rc-benefits-grid {
grid-template-columns: repeat(2, 1fr);
}
.rc-jobs-grid {
grid-template-columns: 1fr;
}
}
/* ── Head ── */
.cs-head {padding:72px 0 100px;}
.cs-title {font-size:40px; font-weight:800; color:#111; letter-spacing:-.02em; line-height:1.25; margin-bottom:16px;}
.cs-title em {font-style:normal; background:var(--grad-brand); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;}
.cs-desc {font-size:15px; color:#666; line-height:1.7;}
/* ── List ── */
.cs-list {display:flex; flex-direction:column; gap:0; padding-bottom:120px;}
/* ── Item ── */
.cs-item {position:relative; display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:center; min-height:560px; padding:80px 0; border-top:1px solid var(--color-primary-soft-border);}
.cs-item:last-child {border-bottom:1px solid var(--color-primary-soft-border);}
.cs-item--flip .cs-img-wrap {order:2;}
.cs-item--flip .cs-body {order:1; padding-right:80px; padding-left:0;}
/* ── 배경 번호 ── */
.cs-bg-num {position:absolute; font-size:200px; font-weight:800; color:#111; opacity:.03; line-height:1; letter-spacing:-.05em; top:50%; transform:translateY(-50%); left:0; pointer-events:none; z-index:0;}
/* ── Image ── */
.cs-img-wrap {position:relative; border-radius:12px; overflow:hidden; aspect-ratio:3/2; will-change:clip-path; z-index:1;}
.cs-img {width:100%; height:100%; object-fit:cover; display:block;}
.cs-img-fallback {position:absolute; inset:0; background:var(--color-primary-soft);}
/* ── Body ── */
.cs-body {padding-left:80px; display:flex; flex-direction:column; gap:20px; z-index:1;}
.cs-meta {display:flex; align-items:center; gap:16px;}
.cs-year {font-size:12px; font-weight:600; color:#aaa; letter-spacing:.1em;}
.cs-eyebrow {font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--color-primary); opacity:.8;}
.cs-item-title {font-size:30px; font-weight:800; color:#111; letter-spacing:-.02em; line-height:1.3; margin:0;}
.cs-item-desc {font-size:14px; color:#555; line-height:1.8; word-break:keep-all;}
.cs-tags {display:flex; gap:8px; flex-wrap:wrap;}
.cs-tag {font-size:11px; font-weight:600; color:var(--color-primary); background:var(--color-primary-soft); padding:4px 12px; border-radius:100px; letter-spacing:.04em;}
/* ── Responsive ── */
@media (max-width: 900px) {
.cs-head {padding:48px 0 64px;}
.cs-title {font-size:28px;}
.cs-item {grid-template-columns:1fr; min-height:auto; padding:48px 0; gap:32px;}
.cs-item--flip .cs-img-wrap {order:0;}
.cs-item--flip .cs-body {order:0; padding-right:0;}
.cs-body {padding-left:0;}
.cs-bg-num {font-size:120px;}
.cs-item-title {font-size:22px;}
}