: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:1660px;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:1660px;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:0;padding-right:0;flex-wrap: wrap;} .sh4-nav-tab{padding:0 20px;font-size:13px;flex:0 0 50%;} .sh4-title-line-inner{margin-top:2rem} .sh4-title em{font-size:3rem;} .sh4-nav-tab--active::after{left:0;right:0;} } @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-tabs { display: flex; gap: 8px; margin-bottom: 32px; } .location-tab { padding: 10px 24px; border-radius: 100px; border: 1px solid #e8e8e8; background: #fff; font-size: 14px; font-weight: 600; color: #999; cursor: pointer; transition: all 0.2s ease; } .location-tab.active { background: var(--color-primary); border-color: var(--color-primary); color: #fff; } .location-tab:hover:not(.active) { border-color: #ccc; color: #333; } .location-wrap { display: grid; grid-template-columns: 1fr 320px; gap: 4rem; align-items: start; padding-bottom: 6rem; } .location-map { width: 100%; height: 480px; border-radius: 20px; overflow: hidden; } .location-map iframe { width: 100%; height: 100%; border: none; display: block; } .location-info-card { display: flex; flex-direction: column; } .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-wrapper { align-self: start; position: sticky; top: 100px; max-height: calc(100vh - 200px); overflow-y: auto; } .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: 32px; padding-bottom: 0; } .location-transport-title { font-size: 16px; font-weight: 700; color: #111; letter-spacing: -0.03em; margin: 0 0 20px; } .location-transport-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 1.25rem; } .location-transport-item { display: flex; flex-direction: column; gap: 14px; 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: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; } .location-transport-icon img { width: 24px; height: 24px; object-fit: contain; } .location-transport-item:nth-child(1) .location-transport-icon { background: #a855a0; } .location-transport-item:nth-child(2) .location-transport-icon { background: #7c5cc4; } .location-transport-item:nth-child(3) .location-transport-icon { background: #3d51b8; } .location-transport-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 56px; 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: #a855a0; } .location-transport-item:nth-child(2) .location-transport-badge { background: #7c5cc4; } .location-transport-item:nth-child(3) .location-transport-badge { background: #3d51b8; } .location-transport-routes { display: flex; flex-direction: column; gap: 10px; } .location-transport-route { display: flex; flex-direction: column; gap: 3px; padding-left: 10px; border-left: 2px solid #f0f0f0; } .location-transport-route-title { font-size: 12px; font-weight: 700; color: #333; margin: 0; } .location-transport-route-desc { font-size: 12px; color: #888; line-height: 1.6; margin: 0; white-space: pre-line; } .location-info-section-title { display: none; font-size: 16px; font-weight: 700; color: #111; letter-spacing: -0.03em; margin: 0 0 20px; } @media (max-width: 768px) { .location-tabs { margin-bottom: 24px; } .location-wrap { display: flex; flex-direction: column; gap: 0; padding-bottom: 4rem; } .location-map-wrap { order: 1; width: 100%; } .location-info-wrapper { order: 2; position: static; max-height: none; margin-top: 40px; width: 100%; } .location-transport-wrap { order: 3; width: 100%; margin-top: 40px; margin-bottom: 4rem; } .location-map { height: 260px; width: 100%;} .location-transport { padding:0 } .location-transport-list { grid-template-columns: 1fr; } .location-info-card { padding: 28px 24px; width: 100%; box-sizing: border-box; background: #fff; border-radius: 16px; border: 1px solid #e8e8e8; margin-top: 0; margin-left: 0; margin-right: 0; } .location-info-list { gap: 20px; margin-bottom: 28px; } .location-hours { margin-top: 0; padding-top: 20px; margin-bottom: 20px; } .location-inquiry-btn { margin-top: 0; border-radius: 12px; } .location-info-section-title { display: block; } } /*연혁*/ /* ── Inner Wrap (공통 max-width) ── */ .inner-wrap {max-width:1660px; 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:first-child{border-top:0;} .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;} } /* top btn */ .top-btn { position: fixed; bottom: 32px; right: 32px; width: 48px; height: 48px; border-radius: 50%; background: #1e2a5e; color: #fff; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 18px; box-shadow: 0 4px 20px rgba(30,42,94,0.4); transition: all 0.2s; z-index: 9999; animation: top-btn-pulse 2s ease-in-out infinite; } .top-btn:hover { background: #2a3a7e; transform: translateY(-4px); animation: none; box-shadow: 0 8px 24px rgba(30,42,94,0.5); } @media (max-width: 768px) { .top-btn { bottom: 20px; right: 20px; width: 40px; height: 40px; font-size: 14px; } } @keyframes top-btn-pulse { 0% { box-shadow: 0 4px 20px rgba(30,42,94,0.4), 0 0 0 0 rgba(30,42,94,0.3); } 70% { box-shadow: 0 4px 20px rgba(30,42,94,0.4), 0 0 0 12px rgba(30,42,94,0); } 100% { box-shadow: 0 4px 20px rgba(30,42,94,0.4), 0 0 0 0 rgba(30,42,94,0); } } /*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);} .about-section-label { font-size: 11px; letter-spacing: 0.15em; text-transform: uppercase; color: #8895c0; font-weight: 500; margin-bottom: 20px; display: flex; align-items: center; gap: 8px; } .about-section-label::before { content: ''; display: block; width: 20px; height: 2px; background: #1e2a5e; } .about-section-label--light { color: rgba(255,255,255,0.4); } .about-section-label--light::before { background: rgba(255,255,255,0.4); } .about-company-section { padding: 100px 0 160px; } .about-company-inner { display: flex; gap: 60px; align-items: flex-start; } .about-company-text { flex: 1; min-width: 420px; } .about-company-heading { font-size: 42px; font-weight: 700; line-height: 1.5; color: #1a1a2e; margin-bottom: 32px; } .about-company-heading .blue { color: #1e2a5e; } .about-company-body { font-size: 16px; color: #555; line-height: 2.1; margin-bottom: 20px; } .about-img-group { flex-shrink: 0; width: 42vw; max-width: 580px; display: flex; gap: 16px; align-items: flex-start; } .about-img-main-wrap { flex: 1; overflow: hidden; height: 480px; background: #f4f5fb; will-change: transform, border-radius; } .about-img-main-wrap img { width: 100%; height: 100%; object-fit: cover; object-position: 20% center; display: block; } .about-img-side-wrap { width: 140px; flex-shrink: 0; overflow: hidden; height: 400px; margin-top: 120px; background: #eef0f8; will-change: transform, border-radius; } .about-img-side-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; object-position: 100% center; } .about-tech-section { background: #0d1628; padding: 100px 0 120px; } .about-stats-row { display: flex; gap: 0; border-bottom: 1px solid rgba(255,255,255,0.08); padding-bottom: 72px; margin-bottom: 80px; } .about-stat-item { flex: 1; padding-right: 40px; border-right: 1px solid rgba(255,255,255,0.08); } .about-stat-item:last-child { border-right: none; padding-right: 0; padding-left: 40px; } .about-stat-item:not(:first-child):not(:last-child) { padding-left: 40px; } .about-stat-num-wrap { display: flex; align-items: flex-end; gap: 4px; margin-bottom: 12px; } .about-stat-num { font-size: 52px; font-weight: 900; color: #fff; line-height: 1; letter-spacing: -0.02em; } .about-stat-suffix { font-size: 24px; font-weight: 700; color: #378ADD; margin-bottom: 6px; } .about-stat-label { font-size: 13px; color: rgba(255,255,255,0.45); font-weight: 400; } .about-tech-intro { margin-bottom: 56px; } .about-tech-heading { font-size: 40px; font-weight: 900; line-height: 1.3; color: #fff; margin-top: 16px; margin-bottom: 20px; letter-spacing: -0.02em; } .about-tech-heading span { color: #378ADD; } .about-tech-desc { font-size: 15px; color: rgba(255,255,255,0.55); line-height: 1.9; max-width: 560px; } .about-tech-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; } .about-tech-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; padding: 28px 24px; } .about-tech-card-icon { width: 44px; height: 44px; border-radius: 10px; background: rgba(55,138,221,0.15); display: flex; align-items: center; justify-content: center; color: #378ADD; font-size: 22px; margin-bottom: 16px; } .about-tech-card-title { font-size: 15px; font-weight: 700; color: #fff; margin-bottom: 10px; line-height: 1.4; } .about-tech-card-desc { font-size: 13px; color: rgba(255,255,255,0.45); line-height: 1.8; } .about-meaning-section { padding: 0 0 120px; border-bottom: 1px solid #f0f0f0; } .about-meaning-title { font-size: 32px; font-weight: 700; color: #1a1a2e; margin-bottom: 36px; } .about-meaning-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } .about-meaning-card { border: 1px solid #e8eaf3; border-radius: 16px; padding: 36px 32px; position: relative; overflow: hidden; } .about-meaning-card::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: #1e2a5e; } .about-meaning-card-keyword { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; color: #1e2a5e; background: #eef0f8; border-radius: 4px; padding: 4px 10px; margin-bottom: 20px; } .about-meaning-card-icon { width: 40px; height: 40px; border-radius: 8px; background: #eef0f8; display: flex; align-items: center; justify-content: center; color: #1e2a5e; font-size: 20px; margin-bottom: 14px; } .about-meaning-card-title { font-size: 18px; font-weight: 700; color: #1a1a2e; margin-bottom: 12px; } .about-meaning-card-desc { font-size: 15px; color: #777; line-height: 1.9; } .about-mission-section { padding: 100px 0 100px; border-top: 1px solid #f0f0f0; } .about-mission-inner { display: flex; gap: 100px; align-items: flex-start; } .about-mission-left { flex: 1; min-width: 360px; padding-top: 8px; } .about-mission-title { font-size: 30px; font-weight: 700; color: #1a1a2e; line-height: 1.5; margin-bottom: 24px; } .about-mission-desc { font-size: 15px; color: #555; line-height: 2.2; } .about-mission-right { flex: 1; display: flex; flex-direction: column; gap: 0; } .about-mission-item { display: flex; gap: 24px; align-items: flex-start; padding: 32px 0; border-bottom: 1px solid #f0f0f0; } .about-mission-item:first-child { border-top: none; } .about-mission-item:last-child { border-bottom: none; } .about-mission-item-num { font-size: 13px; font-weight: 700; color: #d0d4e8; letter-spacing: 0.05em; flex-shrink: 0; padding-top: 2px; width: 28px; } .about-mission-item-body { flex: 1; } .about-mission-item-top { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; } .about-mission-item-title { font-size: 18px; font-weight: 700; color: #1a1a2e; } .about-mission-item-keyword { font-size: 10px; font-weight: 700; letter-spacing: 0.12em; color: #1e2a5e; background: #eef0f8; border-radius: 4px; padding: 3px 8px; } .about-mission-item-desc { font-size: 14px; color: #777; line-height: 1.8; } .about-cert-section { padding: 100px 0 100px; border-top: 1px solid #f0f0f0; } .about-cert-title { font-size: 32px; font-weight: 700; color: #1a1a2e; margin-bottom: 28px; } .about-cert-patents { background: #f8f9fc; border-radius: 12px; padding: 20px 24px; margin-bottom: 48px; } .about-cert-patents-desc { font-size: 14px; color: #666; line-height: 1.9; } .about-cert-cards { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; } .about-cert-card { border: 1px solid #e8eaf3; border-radius: 14px; padding: 28px 24px; display: flex; flex-direction: column; gap: 10px; } .about-cert-card-icon { width: 48px; height: 48px; border-radius: 12px; background: #eef0f8; margin-bottom: 8px; padding: 8px; } .about-cert-card-icon img { width: 100%; height: 100%; object-fit: contain; } .about-cert-card-year { font-size: 11px; font-weight: 600; color: #8895c0; letter-spacing: 0.05em; } .about-cert-card-title { font-size: 14px; font-weight: 700; color: #1a1a2e; line-height: 1.4; } .about-cert-card-desc { font-size: 13px; color: #888; line-height: 1.7; } .about-cta-section { position: relative; padding: 120px 48px; text-align: center; width: 100%; overflow: hidden; background: #0d1628; } .about-cta-section::after { content: ''; position: absolute; inset: 0; background: rgba(13, 22, 40, 0.6); z-index: 1; } .about-cta-bg { position: absolute; inset: -50%; width: 200%; height: 200%; background: radial-gradient(ellipse at 30% 50%, rgba(55,138,221,0.35) 0%, transparent 50%), radial-gradient(ellipse at 70% 50%, rgba(99,51,180,0.3) 0%, transparent 50%); animation: about-cta-move 8s ease-in-out infinite alternate; will-change: transform; z-index: 2; } .about-cta-img { position: absolute; inset: 0; background-size: cover; background-position: center; background-repeat: no-repeat; opacity: 0.4; mix-blend-mode: normal; } .about-cta-inner { position: relative; z-index: 3; max-width: 600px; margin: 0 auto; } .about-cta-title { font-size: 42px; font-weight: 900; color: #fff; line-height: 1.3; letter-spacing: -0.02em; margin-top: 16px; margin-bottom: 24px; } .about-cta-desc { font-size: 15px; color: rgba(255,255,255,0.5); line-height: 1.9; margin-bottom: 48px; } .about-cta-buttons { display: flex; gap: 12px; justify-content: center; } .about-cta-btn { display: inline-flex; align-items: center; padding: 14px 32px; border-radius: 8px; font-size: 14px; font-weight: 600; text-decoration: none; transition: all 0.2s; } .about-cta-btn--primary { background: #fff; color: #0d1628; } .about-cta-btn--primary:hover { background: #eef0f8; } .about-cta-btn--outline { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,0.3); } .about-cta-btn--outline:hover { border-color: #fff; background: rgba(255,255,255,0.05); } @media (max-width: 768px) { .about-img-side-wrap { display: none; } .about-company-section { padding: 64px 0 80px; } .about-company-heading { font-size: 26px; } .about-company-body { font-size: 14px; } .about-meaning-section { padding: 0 0 80px; } .about-meaning-title { font-size: 22px; } .about-meaning-card-title { font-size: 15px; } .about-meaning-card-desc { font-size: 13px; } .about-mission-section { padding: 64px 0 64px; } .about-mission-title { font-size: 20px; } .about-mission-desc { font-size: 13px; } .about-mission-item-title { font-size: 15px; } .about-cert-section { padding: 64px 0 80px; } .about-cert-title { font-size: 22px; } .about-cert-patents-desc { font-size: 12px; } .about-meaning-cards { grid-template-columns: 1fr; } .about-mission-inner { flex-direction: column; gap: 48px; } .about-mission-left { min-width: unset; } .about-cert-cards { grid-template-columns: 1fr 1fr; } .about-slogan-line { font-size: 36px; } .about-company-inner { flex-direction: column; } .about-company-text { min-width: unset; } .about-img-group { width: 100%; max-width: unset; } .about-stats-row { flex-direction: column; gap: 32px; } .about-stat-num { font-size: 36px; } .about-stat-item { border-right: none; padding: 0 0 32px; border-bottom: 1px solid rgba(255,255,255,0.08); } .about-stat-item:last-child { border-bottom: none; padding-bottom: 0; } .about-tech-cards { grid-template-columns: 1fr 1fr; } .about-tech-heading { font-size: 26px; } .about-tech-desc { font-size: 13px; } .about-tech-card-title { font-size: 13px; } .about-cta-section { padding: 80px 24px; } .about-cta-title { font-size: 26px; } .about-cta-desc { font-size: 13px; } .about-cta-btn { width: 100%; max-width: 280px; justify-content: center; } .about-cta-buttons { flex-direction: column; align-items: center; width: 100%; } .about-cta-img { background-position: 20% center; background-size: cover; } } @keyframes about-cta-move { 0% { transform: translate(0%, 0%); } 50% { transform: translate(-10%, 8%); } 100% { transform: translate(10%, -8%); } } /* ════════════════════════════════ FlightControlPage — common.css 추가분 ════════════════════════════════ */ .fc-eyebrow { display: flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: #8895c0; margin-bottom: 1.5rem; } .fc-eyebrow::before { content: ''; display: block; width: 20px; height: 2px; background: linear-gradient(90deg, #e91e8c, #6b21a8); } .fc-eyebrow--light { color: rgba(255,255,255,0.45); } .fc-eyebrow--light::before { background: rgba(255,255,255,0.4); } .fc-section-title {display:block;font-size:1.5rem;font-weight:700;color:var(--color-primary);margin-bottom:2.5rem;letter-spacing:-.01em;} /* ════════════════ 1. 개요 ════════════════ */ .fc-overview { position: relative; border-radius: 1.25rem; overflow: hidden; margin: 3rem 0 6rem; min-height: 520px; display: flex; align-items: flex-end; } .fc-overview__bg {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.38) saturate(.6);} .fc-overview__overlay {position:absolute;inset:0;background:linear-gradient(170deg, rgba(26,31,94,.6) 0%, rgba(26,31,94,.92) 60%);pointer-events:none;} .fc-overview__content {position:relative;z-index:1;padding:3.5rem 3.5rem 4rem;width:100%;} .fc-overview__title {margin:.6rem 0 2.5rem;} .fc-overview__title-inner {font-size:2rem;font-weight:700;line-height:1.45;color:#fff;letter-spacing:-.01em;} .fc-overview__bottom {display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start;} .fc-overview__sub {font-size:.88rem;line-height:1.9;color:rgba(255,255,255,.5);margin:0;} .fc-badges {display:flex;flex-wrap:wrap;gap:.45rem;align-content:flex-start;} .fc-badge {display:inline-flex;align-items:center;gap:.4rem;padding:.42rem .8rem;border-radius:999px;border:1px solid var(--color-primary-border);background:var(--color-primary-soft);color:var(--color-primary);font-size:.76rem;font-weight:600;transition:background .2s,color .2s,border-color .2s;cursor:default;} .fc-badge:hover {background:var(--color-primary);color:#fff;border-color:var(--color-primary);} .fc-badge--light {border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:rgba(255,255,255,.75);} .fc-badge--light:hover {background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.3);color:#fff;} /* ════════════════ 2. intro ════════════════ */ .fc-intro { display: flex; gap: 48px; align-items: center; margin: 0 0 2rem; padding: 60px 0;} .fc-intro__left { flex: 1; } .fc-intro__title { font-size: 2rem; font-weight: 800; color: #1a1f3a; line-height: 1.35; letter-spacing: -0.02em; margin: 16px 0 28px; } .fc-intro__desc { font-size: 0.9rem; color: #666; line-height: 1.9; margin-bottom: 48px; } .fc-intro__icons { display: flex; gap: 32px; } .fc-intro__icon-item { display: flex; flex-direction: column; align-items: center; gap: 10px; } .fc-intro__icon-item img { width: 80px; height: 80px; object-fit: contain; } .fc-intro__icon-item span { font-size: 0.75rem; font-weight: 600; color: #888; } .fc-intro__right { flex: 0 0 52%; } .fc-intro__monitor { width: 100%; object-fit: contain; display: block; } /* ════════════════ 3. 기능 하이라이트 ════════════════ */ .fc-highlight { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; margin-bottom: 8rem; align-items: center; padding: 60px 0;} .fc-highlight__item { display: flex; gap: 24px; align-items: center; } .fc-highlight__text { flex: 0 0 40%; } .fc-highlight__title { font-size: 1.75rem; font-weight: 800; color: #1a1f3a; line-height: 1.35; letter-spacing: -0.02em; margin: 10px 0 16px; } .fc-highlight__desc { font-size: 0.88rem; color: #666; line-height: 1.9; } .fc-highlight__img-wrap { flex: 1; } .fc-highlight__img-wrap img { width: 100%; object-fit: contain; display: block; } .fc-highlight__img-scene { position: relative; width: 100%; } .fc-highlight__tablet { width: 100%; object-fit: contain; display: block; } .fc-highlight__float-icon { position: absolute; width: 72px; height: 72px; object-fit: contain; filter: drop-shadow(0 8px 16px rgba(0,0,0,0.15)); } .fc-situation { position: relative; width: 100%; } /* 메인 이미지 크기 */ .fc-situation__main { width: 100%; object-fit: contain; display: block; } /* 왼쪽 탭 위치/크기 */ .fc-situation__left { position: absolute; left: -20%; top: 10%; width: 60% !important; object-fit: contain; } /* 오른쪽 탭 위치/크기 */ .fc-situation__right { position: absolute; right: -20%; top: 20%; width: 60% !important; object-fit: contain; } /* 아래 탭 위치/크기 */ .fc-situation__bottom { position: absolute; bottom: -40%; left: -5%; width: 60%; object-fit: contain; } /* ════════════════ 4. 수치 지표 ════════════════ */ .fc-stats { display: grid; grid-template-columns: repeat(4,1fr); gap: 0; margin-bottom: 8rem; border: 1px solid var(--color-primary-soft-border); border-radius: 1rem; overflow: hidden; } .fc-stat-item {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2.5rem 1.5rem;text-align:center;border-right:1px solid var(--color-primary-soft-border);transition:background .2s;} .fc-stat-item:last-child {border-right:none;} .fc-stat-item:hover {background:var(--color-primary-soft);} .fc-stat-item__value {font-size:2.25rem;font-weight:800;color:var(--color-primary);letter-spacing:-.03em;line-height:1;} .fc-stat-item__label {font-size:.8rem;font-weight:500;color:#888;line-height:1.4;} /* ════════════════ 5. 적용 분야 ════════════════ */ .fc-domains { margin-bottom: 8rem; } .fc-domains__grid {display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem;} .fc-domain-card {display:flex;flex-direction:column;gap:.75rem;padding:1.75rem 1.5rem;border:1px solid var(--color-primary-soft-border);border-radius:1rem;background:#fff;transition:border-color .2s,box-shadow .2s;cursor:default;} .fc-domain-card:hover {border-color:var(--color-primary-border);box-shadow:0 8px 28px var(--color-primary-shadow);} .fc-domain-card__icon {width:44px;height:44px;border-radius:.75rem;background:var(--color-primary-soft);display:flex;align-items:center;justify-content:center;color:var(--color-primary);transition:background .2s,color .2s;} .fc-domain-card:hover .fc-domain-card__icon {background:var(--color-primary);color:#fff;} .fc-domain-card__label {font-size:.88rem;font-weight:700;color:var(--color-primary);line-height:1.3;} .fc-domain-card__desc {font-size:.78rem;line-height:1.65;color:#888;margin:0;} /* ════════════════ 6. 주요기능 ════════════════ */ .fc-functions { margin-bottom: 8rem; } .fc-functions__body {display:flex;gap:5rem;align-items:flex-start;} .fc-func-list {flex:1;list-style:none;margin:0;padding:0;} .fc-func-item {position:relative;display:flex;align-items:center;gap:2rem;padding:1.1rem 0;border-top:1px solid var(--color-primary-soft-border);overflow:hidden;cursor:default;} .fc-func-list li:last-child {border-bottom:1px solid var(--color-primary-soft-border);} .fc-func-item__num {font-size:.7rem;font-weight:800;letter-spacing:.1em;color:var(--color-primary-border-strong);flex-shrink:0;width:2rem;transition:color .3s;} .fc-func-item.is-active .fc-func-item__num {color:var(--color-primary);} .fc-func-item__label {flex:1;font-size:1rem;font-weight:600;color:#bbb;line-height:1.4;transition:color .3s;} .fc-func-item.is-active .fc-func-item__label {color:#1a1f3a;} .fc-func-item__arrow {flex-shrink:0;color:var(--color-primary);display:flex;align-items:center;} .fc-func-item__line {position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--color-primary);transform-origin:left;will-change:transform;} .fc-func-display {flex:0 0 340px;} .fc-func-display__inner {position:relative;border-radius:.875rem;overflow:hidden;background:#0a0e2e;aspect-ratio:2/1;} .fc-func-display__img {width:100%;height:100%;object-fit:cover;display:block;} .fc-func-display__caption {position:absolute;bottom:0;left:0;right:0;padding:.85rem 1rem;background:linear-gradient(to top, rgba(10,14,46,.88) 0%, transparent 100%);display:flex;align-items:center;gap:.55rem;} .fc-func-display__num {font-size:1rem;font-weight:800;color:var(--pink);line-height:1;} .fc-func-display__label {font-size:.78rem;font-weight:600;color:#fff;} /* ════════════════ 7. 시스템 구성 ════════════════ */ .fc-flow { padding-bottom: 10rem; } .fc-flow__row {display:flex;align-items:flex-start;gap:0;} .fc-flow__item {position:relative;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem;padding:2rem 1rem;} .fc-flow__step {font-size:.68rem;font-weight:800;letter-spacing:.12em;color:var(--color-primary-border-strong);} .fc-flow__label {font-size:.92rem;font-weight:700;color:var(--color-primary);} .fc-flow__desc {font-size:.76rem;line-height:1.65;color:#888;margin:0;} .fc-flow__arrow {position:absolute;top:2.75rem;right:-1px;width:2px;height:1.5rem;background:var(--color-primary-soft-border);transform-origin:top;} /* ════════════════ 반응형 ════════════════ */ @media (max-width: 1024px) { .fc-overview { min-height: 420px; margin: 2rem 0 3rem; } .fc-overview__content { padding: 3rem 2.5rem 3.5rem; } .fc-overview__title-inner { font-size: 1.5rem; } .fc-overview__bottom { grid-template-columns: 1fr; gap: 1.25rem; } .fc-stats { grid-template-columns: repeat(2, 1fr); } .fc-stat-item:nth-child(2) { border-right: none; } .fc-stat-item:nth-child(1), .fc-stat-item:nth-child(2) { border-bottom: 1px solid var(--color-primary-soft-border); } .fc-domains__grid { grid-template-columns: repeat(3, 1fr); } .fc-functions__body { flex-direction: column; gap: 2rem; } .fc-func-display { flex: none; width: 100%; max-width: 500px; } .fc-func-list{ width: 100%; } .fc-flow__row { flex-direction: column; gap: 1rem; } .fc-flow__item { flex-direction: row; text-align: left; align-items: flex-start; gap: 1rem; } .fc-flow__arrow { display: none; } .fc-highlight { grid-template-columns: 1fr; gap: 48px; } .fc-highlight__item { flex-direction: column; } .fc-highlight__img-wrap { width: 100%; } } @media (max-width: 640px) { .fc-overview { border-radius: .875rem; min-height: 360px; } .fc-overview__content { padding: 2.5rem 1.75rem 3rem; } .fc-overview__title-inner { font-size: 1.2rem; } .fc-domains__grid { grid-template-columns: repeat(2, 1fr); } .fc-func-item__label { font-size: .9rem; } .fc-intro { flex-direction: column; } .fc-intro__right { width: 100%; } .fc-intro__title { font-size: 1.5rem; } .fc-highlight { gap: 32px; margin-bottom: 5rem; } .fc-highlight__item { gap: 16px; } .fc-highlight__title { font-size: 1.3rem; } .fc-highlight__desc { font-size: 0.82rem; } .fc-highlight__float-icon { width: 48px; height: 48px; } .fc-highlight__img-scene { transform: scale(0.75); transform-origin: top center; } } /* ════════════════════════════════ IBEPAGE — common.css 추가분 ════════════════════════════════ */ .ibe-channel-section { padding: 60px 0; } .ibe-channel__title { font-size: 2rem; font-weight: 800; color: #1a1f3a; line-height: 1.35; letter-spacing: -0.02em; margin: 12px 0 16px; } .ibe-channel__desc { font-size: 0.9rem; color: #666; line-height: 1.9; margin-bottom: 56px; } .ibe-channel__diagram { position: relative; width: min(1540px, 100%); height: 430px; margin: 0 auto; display: grid; grid-template-columns: 420px 1fr 420px; align-items: center; } .ibe-channel__svg { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; } .ibe-channel__svg path { fill: none; stroke: rgba(217,72,137,0.42); stroke-width: 2; } .ibe-channel__svg circle { fill: #d94889; opacity: 0.85; } .ibe-channel__col { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 34px; } .ibe-channel__col--left { align-items: flex-start; } .ibe-channel__col--right { align-items: flex-end; } .ibe-channel__card { width: 285px; height: 82px; display: flex; align-items: center; gap: 18px; padding: 0 28px; border: 1px solid rgba(232,234,243,0.9); border-radius: 18px; background: rgba(255,255,255,0.92); box-shadow: 0 8px 28px rgba(31,34,64,0.11); } .ibe-channel__card img { width: 44px; height: 44px; object-fit: contain; } .ibe-channel__card span { font-size: 1rem; font-weight: 700; color: #1a1f3a; } .ibe-channel__center { position: relative; z-index: 3; display: flex; justify-content: center; align-items: center; } .ibe-channel__center-img { width: 310px; object-fit: contain; filter: drop-shadow(0 24px 35px rgba(93,47,151,0.22)); } .ibe-channel__svg path { fill: none; stroke: rgba(139,92,246,0.35); stroke-width: 2; stroke-dasharray: 12 6; animation: ibe-flow 2s linear infinite; } .ibe-channel__svg path:nth-child(2) { animation-delay: 0.3s; } .ibe-channel__svg path:nth-child(3) { animation-delay: 0.6s; } .ibe-channel__svg path:nth-child(4) { animation-delay: 0.2s; } .ibe-channel__svg path:nth-child(5) { animation-delay: 0.5s; } .ibe-channel__svg path:nth-child(6) { animation-delay: 0.8s; } .ibe-channel__svg circle { fill: #8b5cf6; opacity: 0.7; } @media (max-width: 1024px) { .ibe-channel__diagram { width: 100%; height: auto; grid-template-columns: 1fr; gap: 24px; } .ibe-channel__svg { display: none; } .ibe-channel__col { flex-direction: row; flex-wrap: wrap; justify-content: center; } .ibe-channel__col--left, .ibe-channel__col--right { align-items: center; } .ibe-channel__card { width: 220px; height: 72px; } .ibe-channel__center-img { width: 240px; } } @keyframes ibe-flow { from { stroke-dashoffset: 36; } to { stroke-dashoffset: 0; } }