@charset "utf-8";

/* ===== Sub hero · page chrome (desktop base · 축소는 responsive.css) ===== */
.sub-hero {position:relative;width:100%;height:min(calc(100svh * 0.75), calc(100dvh * 0.75), calc(100vw * 954 / 1920 * 0.75)); min-height: min(420px, calc(100svh * 0.75), calc(100dvh * 0.75)); overflow:hidden;box-sizing:border-box;}
.sub-hero::before {content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(180deg,rgba(0,0,0,0) 61.25%,rgba(0,0,0,0.24) 100%),linear-gradient(180deg,rgba(0,0,0,0.24) 0%,rgba(0,0,0,0) 26.939%),linear-gradient(90deg,rgba(0,0,0,0.12) 0%,rgba(0,0,0,0.12) 100%);}
.sub-hero-inner {position:relative;z-index:2;max-width:var(--contain-width);height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--space-10);padding-left:var(--container-space);padding-right:var(--container-space);padding-bottom:clamp(48px, 8vh, 64px);box-sizing:border-box;}
.sub-hero-title {font-size:var(--font-size-48);line-height:1.25em;font-weight:600;color:#fff;letter-spacing:-0.02em;}
.about-us-media {width:min(100%,calc(100vw - 520px));aspect-ratio:1400/480;}

/* ===== Biz cards · platform switcher ===== */
.biz-card {border:1px solid rgba(28,28,28,0.08);border-radius:8px;background:#fff;overflow:hidden;}
.biz-card-media {aspect-ratio:4/3;width:100%;background:#f5f5f5;overflow:hidden;}
.biz-card-media img {display:block;width:100%;height:100%;object-fit:cover;}
.biz-card-body {display:flex;flex-direction:column;gap:var(--space-12);padding:var(--space-28);}
.home-biz-preview {position:relative;width:820px;height:auto;max-width:none;aspect-ratio:1/1;border-radius:8px;overflow:hidden;background:#f0f0f0;flex:1 1 0;min-width:0;}
.home-biz-preview img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:8px;opacity:0;transition:opacity 0.65s cubic-bezier(0.4,0,0.2,1);}
.home-biz-preview img.is-active {opacity:1;}
.home-biz-list {display:flex;flex:1 1 0;flex-direction:column;min-width:0;width:100%;min-height:820px;height:auto;align-self:stretch;}
.home-biz-item {display:flex;flex:0 0 auto;flex-direction:column;align-items:flex-start;width:100%;text-align:left;border:none;border-top:1px solid transparent;border-bottom:1px solid #dfdfdf;background:transparent;padding:var(--space-30) 0;gap:var(--space-10);font-family:inherit;cursor:pointer;overflow:hidden;transition:flex 0.65s cubic-bezier(0.4,0,0.2,1),padding 0.65s cubic-bezier(0.4,0,0.2,1),gap 0.55s cubic-bezier(0.4,0,0.2,1),border-color 0.55s ease,opacity 0.45s ease;}
.home-biz-item.is-active {flex:1 1 0;justify-content:space-between;gap:0;border-top-color:#1c1c1c;border-bottom-color:#1c1c1c;padding:var(--space-44) 0;}
.home-biz-item:first-child {border-top-color:#dfdfdf;}
.home-biz-item:first-child.is-active {border-top-color:#1c1c1c;}
.home-biz-item-num {font-size:var(--font-size-24);font-weight:400;line-height:1.58em;letter-spacing:-0.48px;color:#bbb;transition:transform 0.55s cubic-bezier(0.4,0,0.2,1),opacity 0.45s ease;}
.home-biz-item.is-active .home-biz-item-num {transform:translateY(0);opacity:1;}
.home-biz-item:not(.is-active) .home-biz-item-num {transform:translateY(0);opacity:0.88;}
.home-biz-item-body {display:flex;flex-direction:column;gap:var(--space-16);align-items:flex-start;width:100%;transition:transform 0.6s cubic-bezier(0.4,0,0.2,1),opacity 0.5s ease;}
.home-biz-item:not(.is-active) .home-biz-item-body {transform:translateY(2px);opacity:0.92;}
.home-biz-item.is-active .home-biz-item-body {flex:1 1 0;min-height:0;justify-content:space-between;gap:0;transform:translateY(0);opacity:1;}
.home-biz-item-title {font-weight:500;margin:0;font-size:var(--font-size-28);line-height:1.5em;letter-spacing:-0.56px;color:#878787;transition:color 0.55s ease,font-size 0.6s cubic-bezier(0.4,0,0.2,1),line-height 0.6s cubic-bezier(0.4,0,0.2,1),letter-spacing 0.55s ease;}
.home-biz-item.is-active .home-biz-item-title {font-size:var(--font-size-40);line-height:1.35em;letter-spacing:-0.8px;color:#2c2c2c;}
.home-biz-item-desc {font-size:var(--font-size-20);font-weight:400;line-height:1.7em;letter-spacing:-0.4px;color:#676767;max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);transition:max-height 0.65s cubic-bezier(0.4,0,0.2,1),opacity 0.5s ease 0.08s,transform 0.55s cubic-bezier(0.4,0,0.2,1) 0.06s;}
.home-biz-item.is-active .home-biz-item-desc {max-height:min(140px,28vh);opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion:reduce) {
.home-biz-item,
.home-biz-item-num,
.home-biz-item-body,
.home-biz-item-title,
.home-biz-item-desc,
.home-biz-preview img {transition:none;}
.home-biz-item-desc {transform:none;}
}

/* ===== Aravest · director · values ===== */
.aravest-section {position:relative;overflow:hidden;background:#1c1c1c url("/images/main/aravest-bg.png") center / cover no-repeat;}
.aravest-section::before {content:'';position:absolute;inset:0;background:rgba(0,0,0,0.32);z-index:1;}
.aravest-logo-wrap {position:relative;width:clamp(320px,25vw,480px);height:auto;aspect-ratio:300/194;opacity:0.64;overflow:hidden;flex-shrink:0;}
.aravest-logo-wrap img {position:absolute;width:198.77%;height:171.93%;max-width:none;left:-51.53%;top:-24.62%;object-fit:cover;}
.aravest-content {display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-100);width:min(60%,920px);flex-shrink:0;}
.director-frame {position:relative;height:clamp(320px,42vw,380px);width:100%;max-width:min(320px,100%);border-radius:8px;overflow:hidden;background:#f6f6f6;margin:0 auto;}
.director-frame img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 18%;transform:scale(1.08);}
.about-company-grid {align-items:stretch;}
.about-company-grid > article {min-height:100%;}
.about-company-grid .about-company-value {margin:0;}
.values-card {border-radius:8px;background:#fff;padding:var(--space-40) var(--space-32);min-width:0;}
.values-card p {overflow-wrap:break-word;word-break:keep-all;}
.core-values-pillars {display:grid;grid-template-columns:repeat(3,1fr);gap:0;align-items:stretch;}
.core-values-pillar {display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-30);min-width:0;padding:0 var(--space-32);height:100%;}
.core-values-pillar:not(:last-child) {border-right:1px solid #eee;}
.core-values-pillar-title {font-size:var(--font-size-30);font-weight:600;line-height:1.33em;color:#2c2c2c;letter-spacing:-0.4px;}
.core-values-pillar-title--single {display:flex;align-items:center;justify-content:center;min-height:2.66em;}
.core-values-pillar-desc {font-size:var(--font-size-18);line-height:1.56em;color:#676767;letter-spacing:-0.36px;}

/* ===== Values accordion ===== */
.values-accordion {--values-acc-icon-size:28px;--values-acc-toggle-size:20px;display:flex;flex-direction:column;width:100%;border-top:1px solid #eee;}
.values-acc-item {border-bottom:1px solid #eee;}
.values-acc-btn {display:flex;align-items:center;gap:var(--space-16);width:100%;padding:var(--space-28) var(--space-20);background-color:rgba(28,28,28,0);border:0;text-align:left;cursor:pointer;font-family:inherit;transition:background-color 0.4s cubic-bezier(0.4,0,0.2,1),color 0.4s cubic-bezier(0.4,0,0.2,1);}
.values-accordion .values-acc-btn[aria-expanded="true"] {background-color:#1c1c1c !important;color:#fff !important;}
.values-accordion .values-acc-btn[aria-expanded="true"] .values-acc-label {color:#fff;}
.values-acc-icon img,
.values-acc-toggle img {transition:filter 0.4s cubic-bezier(0.4,0,0.2,1),opacity 0.3s ease;}
.values-accordion .values-acc-btn[aria-expanded="true"] .values-acc-icon img,
.values-accordion .values-acc-btn[aria-expanded="true"] .values-acc-toggle img {filter:brightness(0) invert(1);}
.values-acc-icon {display:inline-flex;width:var(--values-acc-icon-size);height:var(--values-acc-icon-size);flex-shrink:0;}
.values-acc-icon img {width:var(--values-acc-icon-size);height:var(--values-acc-icon-size);object-fit:contain;}
.values-acc-label {flex:1 1 auto;font-size:var(--font-size-26);font-weight:500;line-height:1.4em;letter-spacing:-0.48px;color:#2c2c2c;transition:color 0.4s cubic-bezier(0.4,0,0.2,1);}
.values-acc-toggle {position:relative;display:inline-flex;width:var(--values-acc-toggle-size);height:var(--values-acc-toggle-size);flex-shrink:0;}
.values-acc-toggle img {width:var(--values-acc-toggle-size);height:var(--values-acc-toggle-size);object-fit:contain;}
.values-acc-toggle-minus {position:absolute;inset:0;opacity:0;pointer-events:none;}
.values-acc-btn[aria-expanded="true"] .values-acc-toggle-plus {opacity:0;}
.values-acc-btn[aria-expanded="true"] .values-acc-toggle-minus {opacity:1;}
.values-acc-panel {overflow:hidden;max-height:0;opacity:0;transition:max-height 0.45s cubic-bezier(0.4,0,0.2,1),opacity 0.35s ease;}
.values-acc-panel.is-open {max-height:480px;opacity:1;}
.values-acc-body {padding:var(--space-28) var(--space-56) var(--space-28) var(--space-64);transform:translateY(-6px);opacity:0;transition:transform 0.4s cubic-bezier(0.4,0,0.2,1),opacity 0.35s ease;}
.wwa-stat-num {font-size:var(--font-size-56);line-height:1.25em;}
.footer-legal-text {white-space:nowrap;}
.sub-section-title {font-size:var(--font-size-36);line-height:1.35em;font-weight:600;color:#2c2c2c;letter-spacing:-0.02em;}
.values-acc-panel.is-open .values-acc-body {transform:translateY(0);opacity:1;}
.values-acc-body p {overflow-wrap:break-word;word-break:keep-all;}

/* ===== Sub pages (Phase 2~4 · desktop base) ===== */
.sub-section-block {padding-top:var(--space-120);padding-bottom:var(--space-140);}
.sub-section-block--md {padding-top:var(--space-100);padding-bottom:var(--space-100);}
.sub-section-block--gray {background-color:#fafafa;}
.sub-section-block--white {background-color:#fff;}
.page-about-index .sub-section-block,
.page-platform-index .sub-section-block,
.page-contact-index .sub-section-block,
.page-contact-index .location-section {padding-left:0 !important;padding-right:0 !important;}
.sub-h2 {margin:0 0 var(--space-80);font-size:var(--font-size-40);font-weight:600;line-height:1.3em;letter-spacing:-0.02em;color:var(--color-primary);}
.sub-h2--sm {margin-bottom:var(--space-56);}
.about-intro {display:flex;flex-direction:column;gap:var(--space-40);}
.about-intro .sub-h2 {margin-bottom: 0;}
.sub-body {display:flex;flex-direction:column;gap:var(--space-24);font-size:var(--font-size-20);line-height:1.7em;letter-spacing:-0.02em;color:var(--color-muted);}
.sub-body p {margin:0;}
.br-md-only {display:inline;}
.director-list {display:flex;flex-direction:column;gap:var(--space-60);}
.director-card {display:flex;flex-direction:row;gap:var(--space-60);align-items:center;border-bottom:1px solid #eee;padding-bottom:var(--space-60);}
.director-card:last-child {border-bottom:0;padding-bottom:0;}
.director-head {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-12);border-bottom:1px solid #eee;padding-bottom:var(--space-24);width:100%;}
.director-name {margin:0;font-size:var(--font-size-32);font-weight:600;line-height:1.3em;color:var(--color-primary);}
.director-role {margin:0;font-size:var(--font-size-24);font-weight:600;line-height:1.3em;color:var(--color-label);}
.director-bio {display:flex;flex-direction:column;gap:var(--space-12);font-size:var(--font-size-18);line-height:1.55em;color:var(--color-muted);}
.director-bio p {margin:0;}
.director-body {display:flex;flex-direction:column;gap:var(--space-24);flex:1;min-width:0;width:100%;}
.biz-switcher {display:flex;flex-direction:row;align-items:stretch;gap:var(--space-80);width:100%;}
.biz-switcher .home-biz-preview {position:sticky;top:120px;flex-shrink:0;}
.values-acc-body--stack {display:flex;flex-direction:column;gap:var(--space-10);}
.values-acc-strong {margin:0;font-size:var(--font-size-20);font-weight:600;line-height:1.5em;color:var(--color-primary);}
.sub-hero-media .sub-hero-image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;}
.icon {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0;}
.icon24 {width:24px;height:24px;}
.icon24 img {display:block;width:100%;height:100%;object-fit:contain;}
.btn-02 {display:inline-flex;align-items:center;justify-content:center;gap:var(--space-12);padding:var(--space-12) var(--space-20);border-radius:80px;border:1px solid var(--color-secondary);background:transparent;color:var(--color-secondary);font-size:var(--font-size-16);font-weight:500;line-height:1.7em;letter-spacing:-0.02em;width:fit-content;transition:background-color 0.25s ease,color 0.25s ease,border-color 0.25s ease;}
.btn-02:hover {background:var(--color-secondary);color:#fff;border-color:var(--color-secondary);}
.btn-02 .icon {position:relative;width:16px;height:16px;flex-shrink:0;}
.btn-02 .btn-02-arrow-dark,
.btn-02 .btn-02-arrow-white {position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}
.btn-02 .btn-02-arrow-dark {display:block;}
.btn-02 .btn-02-arrow-white {display:none;}
.btn-02:hover .btn-02-arrow-dark {display:none;}
.btn-02:hover .btn-02-arrow-white {display:block;}
.contact-inquiries-grid {display:flex;flex-direction:row;align-items:flex-start;gap:var(--space-80);}
.contact-inquiries {display:flex;flex-direction:column;gap:var(--space-48);flex:1;min-width:0;}
.contact-inquiries-intro {display:flex;flex-direction:column;gap:var(--space-40);}
.contact-inquiries-lead {margin:0;font-size:var(--font-size-22);line-height:1.6em;letter-spacing:-0.02em;color:#505050;}
.inquiries-contact-info {display:flex;flex-direction:column;gap:var(--space-12);border-top:1px solid #eee;padding-top:var(--space-50);}
.contact-info-row {display:flex;flex-direction:row;align-items:center;gap:0;}
.contact-info-label {display:flex;align-items:center;gap:var(--space-12);width:100%;max-width:120px;flex-shrink:0;}
.contact-info-label span:last-child {font-size:var(--font-size-20);line-height:1.7em;font-weight:500;color:var(--color-label);}
.contact-info-value {margin:0;font-size:var(--font-size-20);line-height:1.7em;color:var(--color-muted);}
.contact-info-value a:hover {color:var(--color-primary);}
.inquiries-form {display:flex;flex-direction:column;gap:var(--space-30);flex:1;min-width:0;}
.inquiries-form-fields {display:flex;flex-direction:column;gap:var(--space-20);}
.inquiries-form-grid {display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-20);}
.inquiries-form-field {display:flex;flex-direction:column;gap:var(--space-12);}
.inquiries-form-captcha-row {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-10);}
.inquiries-form-captcha-row input {width:140px;}
.inquiries-form-footer {display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-24);border-top:1px solid #eee;padding-top:var(--space-40);}
.inquiries-privacy-row {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-10);}
.inquiries-privacy-row input[type="checkbox"] {width:20px;height:20px;flex-shrink:0;}
.inquiries-privacy-row label {font-size:var(--font-size-16);line-height:1.7em;color:#505050;}
.location-section {padding-top:var(--space-120);padding-bottom:var(--space-140);}
.location-grid {display:flex;flex-direction:row;align-items:stretch;gap:var(--space-70);}
.location-content {display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-40);flex:1;min-width:0;}
.location-head {display:flex;flex-direction:column;gap:var(--space-8);}
.location-label {margin:0;font-size:var(--font-size-18);font-weight:600;line-height:1.3em;color:var(--color-label);}
.location-detail {border-top:1px solid #eee;padding-top:var(--space-24);}
.location-rows {display:flex;flex-direction:column;gap:var(--space-24);}
.location-row {display:flex;flex-direction:row;gap:var(--space-32);}
.location-row--border {border-bottom:1px solid #eee;padding-bottom:var(--space-24);}
.location-row-label {margin:0;width:100px;flex-shrink:0;font-size:var(--font-size-20);line-height:1.5em;font-weight:600;color:var(--color-label);}
.location-row-value {margin:0;font-size:var(--font-size-20);line-height:1.5em;color:var(--color-muted);}
.location-row-value a:hover {color:var(--color-primary);}
.location-map-btn {margin-top:var(--space-100);}
.location-media {flex:1;aspect-ratio:1/1;border-radius:8px;overflow:hidden;background:#f5f5f5;}
.location-media img {display:block;width:100%;height:100%;object-fit:cover;}
.location-grid--seoul .location-media {order:1;}
.location-grid--seoul .location-content {order:2;}
