﻿@charset "utf-8";
/* import css */
@import url("reset.css");
@import url("font.css");

:root {
  --header-height: 96px;

  /* Colors */
  --brand-green: #004f31;
  --color-text: #111;
  --color-white: #fff;
  --color-visual-bg: #07140f;
  --color-accent: #f5b900;
  --color-feature: #d8a65c;
  --color-feature-bg: rgba(0, 0, 0, 0.42);
  --color-orange: #f28c00;
  --color-muted: #999;
  --color-section-bg: #f7f7f7;
  --color-company-text: #d8c09e;
  --color-card-bg: #f8faf8;
  --color-card-border: #d5d8d5;
  --color-space-shadow: rgba(0, 0, 0, 0.28);
  --color-table-green: #235f3f;
  --color-table-line: #d0d0d0;
  --color-total-bg: #e4f2ed;
  --color-notice-bg: #fff4d6;
  --color-process-border: #d1ded7;
  --color-process-shadow: #f1f1f1;
  --color-contact-bg: #f7f8f4;
  --color-input-border: #cccccc;
  --color-contact-shadow: rgba(0, 0, 0, 0.18);
  --color-error: #b42318;
  --color-footer-bg: #0e1d26;
  --color-footer-muted: #8d979c;
  --color-footer-title: #dce96f;
  --color-footer-line: #34434b;
  --color-slider-overlay: rgba(0, 0, 0, 0.5);
  --color-slider-dot: rgba(255, 255, 255, 0.78);
  --color-header-shadow: rgba(0, 0, 0, 0.12);

  /* Font sizes */
  --font-size-14: 0.875rem;
  --font-size-16: 1rem;
  --font-size-18: 1.125rem;
  --font-size-20: 1.25rem;
  --font-size-24: 1.5rem;
  --font-size-30: 1.875rem;
  --font-size-38: 2.375rem;
  --font-size-45: 2.8125rem;
  --font-size-58: 3.625rem;
  --font-size-68: 4.25rem;
  --font-size-84: 5.25rem;
  --font-size-120: 7.5rem;

  /* padding */
  --inner-padding-150: 150px;
  --inner-padding-100: 100px;
  --inner-padding-50: 50px;

  --inner-padding-top: var(--inner-padding-150); 
  --inner-padding-bottom: var(--inner-padding-150);
}

 


body {
  overflow-y: auto;
  padding-top: var(--header-height);
  font-family: 'NanumBarunGothic', sans-serif;
}

section[id] { scroll-margin-top: calc(var(--header-height)); }


/**********/
/* Header */
.site-header { position: fixed; z-index: 1000; top: 0; right: 0; left: 0; height: var(--header-height); background: var(--color-white); box-shadow: 0 4px 16px var(--color-header-shadow);}
.site-header__inner { display: flex; align-items: center; width: min(1420px, calc(100% - 48px)); height: 100%; margin: 0 auto; }
.site-header__logo { flex: 0 0 auto; width: 13%; min-width: 110px; }
.site-header__logo img { width: 100%; height: auto; }
.site-nav { display: flex; align-items: center; justify-content: space-between; width: 690px; padding-left: 10px; padding-right: 10px; margin-left: auto; margin-right: auto; }
.site-nav a { position: relative; padding: 18px 0; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); white-space: nowrap; }
.site-nav a::after { position: absolute; right: 0; bottom: 8px; left: 0; height: 2px; background: var(--brand-green); content: ''; transform: scaleX(0); transition: transform 0.2s ease; }
.site-nav a:hover::after, .site-nav a:focus-visible::after { transform: scaleX(1); }
.header-contact { display: flex; flex: 0 0 200px; align-items: center; justify-content: center; height: 64px; margin-left: 58px; border-radius: 12px; color: var(--color-white); background: var(--brand-green); }
.header-contact > img { width: 34px; height: 34px; margin-right: 10px; }
.header-contact__text { display: flex; flex-direction: column; line-height: 1; }
.header-contact__text span { margin-bottom: 2px; font-size: var(--font-size-14); }
.header-contact__text strong { font-size: var(--font-size-24); font-weight: 400; line-height: 1; letter-spacing: -1px; }

@media (max-width: 1280px) {
.site-nav { width: 600px; }
.site-nav a { font-size: var(--font-size-20); }
.header-contact { flex-basis: 176px; margin-left: 29px; }
.header-contact__text strong { font-size: var(--font-size-24); }
}

@media (max-width: 1024px) {
:root { --header-height: 112px; }
.site-header__inner { flex-wrap: wrap; align-content: center; width: calc(100% - 32px); }
.site-header__logo { width: 132px; }
.site-nav { order: 3; width: 100%; margin: 8px 0 0 0; gap: 32px; overflow-x: auto; scrollbar-width: none; }
.site-nav::-webkit-scrollbar { display: none; }
.site-nav a { flex: 0 0 auto; padding: 10px 0; font-size: var(--font-size-18); }
.header-contact { flex-basis: 152px; height: 46px; margin-left: auto; border-radius: 10px; }
.header-contact > img { width: 26px; height: 26px; }
.header-contact__text span { font-size: var(--font-size-14); }
.header-contact__text strong { font-size: var(--font-size-20); }
}

@media (max-width: 640px) {
:root { --header-height: 100px; }
.site-header__inner { width: calc(100%); margin: 0; padding-left: 5px; padding-right: 5px;}
.site-header__logo { width: 114px; }
.header-contact { flex-basis: auto; width: 46px; height: 46px; border-radius: 50%; }
.header-contact > img { width: 24px; height: 24px; margin: 0; }
.header-contact__text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; clip-path: inset(50%); }
.site-nav { gap: 10px; margin-top: 6px; width: 100%; padding-left: 0; padding-right: 0;}
.site-nav a { font-size: var(--font-size-14); padding: 10px 0; }
}
/* Header */
/**********/


.main-visual__inner,
.best-partner__inner,
.game-advantages__inner,
.company-intro__inner,
.system-composition__inner,
.premium-space__inner,
.investment-plan__inner,
.profit-analysis__inner,
.startup-process__inner,
.contact-us__inner { position: relative; overflow:hidden; calc(100% - 48px); max-width: 1440px; padding-top: var(--inner-padding-top); padding-bottom: var(--inner-padding-bottom); padding-left: 10px; padding-right: 10px; margin: 0 auto; isolation: isolate;}

@media (max-width: 1280px) {
  .main-visual__inner,
  .best-partner__inner,
  .game-advantages__inner,
  .company-intro__inner,
  .system-composition__inner,
  .premium-space__inner,
  .investment-plan__inner,
  .profit-analysis__inner,
  .startup-process__inner,
  .contact-us__inner { --inner-padding-top: var(--inner-padding-100); --inner-padding-bottom: var(--inner-padding-100); width: calc(100% - 48px); padding-top: var(--inner-padding-top); padding-bottom: var(--inner-padding-bottom); }
}
@media (max-width: 768px) {
  .main-visual__inner,
  .best-partner__inner,
  .game-advantages__inner,
  .company-intro__inner,
  .system-composition__inner,
  .premium-space__inner,
  .investment-plan__inner,
  .profit-analysis__inner,
  .startup-process__inner,
  .contact-us__inner { --inner-padding-top: var(--inner-padding-50); --inner-padding-bottom: var(--inner-padding-50); padding-top: var(--inner-padding-top); padding-bottom: var(--inner-padding-bottom); }
}


/***************/
/* Main visual */
.main-visual { position: relative; min-height: 960px; overflow: hidden; color: var(--color-white); background: var(--color-visual-bg) url('../img/bg_main-visual.png') center center / cover no-repeat; }
.main-visual__inner { min-height: 1150px;}
.main-visual__copy { position: absolute; z-index: 5; top: calc(var(--inner-padding-top) + 86px); left: 10px; }
.main-visual__eyebrow { font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); line-height: 1.8; }
.main-visual h1 { margin-top: 42px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-84); line-height: 1.42; letter-spacing: -4px; }
.main-visual__call { display: inline-flex; align-items: center; min-height: 82px; margin-top: 70px; padding: 0 32px; border: 4px solid var(--color-accent); color: var(--color-accent); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); }
.main-visual__call strong { margin-left: 10px; font-size: var(--font-size-38); font-weight: 400; }
.main-visual__price { position: absolute; z-index: 1; top: calc(var(--inner-padding-top) + -50px); right: 10px; max-width: 49% }
.main-visual__bear { position: absolute; z-index: 2; top: calc(var(--inner-padding-top) + 100px); left: 330px; max-width: 34.7%; }
.main-visual__features { position: absolute; z-index: 5; right: 24px; bottom: calc(var(--inner-padding-bottom) + 50px); display: grid; width: 430px; /*width: 395px;*/ gap: 8px; }
.main-visual__features li { display: flex; align-items: center; min-height: 88px; padding: 8px 16px; border: 3px solid var(--color-feature); border-radius: 18px; color: var(--color-feature); background: var(--color-feature-bg); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30);/*font-size: var(--font-size-18);*/ line-height: 1.3;}
.main-visual__features img { flex: 0 0 60px; width: 60px; height: 60px; margin-right: 14px; }
.main-visual__features strong { font-size: var(--font-size-24); font-weight: 400; }


@media (max-width: 1280px) {
.main-visual__copy { top: calc(var(--inner-padding-top) + 40px);}
.main-visual, .main-visual__inner { min-height: 850px; }
.main-visual__eyebrow { font-size: var(--font-size-24); }
.main-visual h1 { font-size: var(--font-size-68); }
.main-visual__bear { top: calc(var(--inner-padding-top) + 80px); left: 25%; max-width: 32%; }
.main-visual__features { right: 0; bottom: calc(var(--inner-padding-bottom) + 20px); /*width: 340px;*/ }
.main-visual__features li {font-size: var(--font-size-24);/*font-size: var(--font-size-16);*/ padding: 5px 10px; min-height: 60px;}
.main-visual__features img { flex: 0 1 50px; width: 50px;}
}

@media (max-width: 1024px) {
.main-visual, .main-visual__inner { min-height: 800px; }
.main-visual__inner { width: calc(100% - 32px); }
.main-visual__copy { top: calc(var(--inner-padding-top) + 52px); }
.main-visual h1 { margin-top: 24px; font-size: var(--font-size-58); }
.main-visual__call { min-height: 64px; margin-top: 34px; padding: 0 20px; font-size: var(--font-size-24); }
.main-visual__call strong { font-size: var(--font-size-30); }
.main-visual__price { z-index: 1; top: calc(var(--inner-padding-top) + -25px); width: 580px; }
.main-visual__bear { z-index: 2; top: calc(var(--inner-padding-top) + 30px); left: 25%; max-width: 30%; }
.main-visual__features { right: 0; bottom: calc(var(--inner-padding-bottom) + 10px); width: 400px;/*width: 350px;*/ }
}

@media (max-width: 768px) {
.main-visual { min-height: 0; }
.main-visual__inner { display: flex; min-height: 0; flex-direction: column; align-items: center; padding-top: 70px; padding-bottom: 70px; }
.main-visual__copy { position: static; width: 100%; text-align: center;}
.main-visual__eyebrow { font-size: var(--font-size-16); }
.main-visual h1 { margin-top: 16px; font-size: var(--font-size-45); line-height: 1.25; letter-spacing: -2px; }
.main-visual__call { min-height: 52px; margin-top: 20px; border-width: 3px; font-size: var(--font-size-18); }
.main-visual__call strong { font-size: var(--font-size-20); }
.main-visual__price { position: static; width: 80%; max-width: 500px; min-width: 0; margin-top: 36px; transform: none; }
.main-visual__bear { display: none;}
.main-visual__features { position: static; width: 100%; margin-top: 36px; gap: 6px; }
.main-visual__features li { min-height: 66px; border-width: 2px; border-radius: 12px; font-size: var(--font-size-18);/*font-size: var(--font-size-16);*/  width: 90%; margin: 0 auto;}
.main-visual__features img { flex-basis: 44px; width: 44px; height: 44px; }
/*.main-visual__features strong { font-size: var(--font-size-20); }*/
}




/*******************/
/* Fit-out gallery */
.fitout-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; max-width: 2200px; margin: 0 auto; gap: 3px; background: var(--color-accent); }
.fitout-gallery__item, .fitout-gallery__copy { aspect-ratio: 3 / 2; overflow: hidden; background: var(--color-white); }
.fitout-gallery__item img { width: 100%; height: 100%; object-fit: cover; }
.fitout-gallery__copy { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px; color: var(--color-text); text-align: center; }
.fitout-gallery__eyebrow { color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.fitout-gallery__copy h2 { margin-top: 28px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-45); line-height: 1.1; letter-spacing: -2px; }
.fitout-gallery__subtitle { margin-top: 14px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); }
.fitout-gallery__offer { margin-top: 36px; color: var(--color-feature); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); }

@media (max-width: 1440px) {
.fitout-gallery__eyebrow { font-size: var(--font-size-20); }
.fitout-gallery__copy h2 { margin-top: 8px; font-size: var(--font-size-38); letter-spacing: -1px; }
.fitout-gallery__subtitle { margin-top: 6px; font-size: var(--font-size-30); }
.fitout-gallery__offer { margin-top: 10px; font-size: var(--font-size-24); }
}
/*
@media (max-width: 1280px) {
.fitout-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.fitout-gallery__copy { grid-column: 1 / -1; aspect-ratio: 3 / 1; padding: 16px; }
}
*/
@media (max-width: 1280px) {
.fitout-gallery__eyebrow { font-size: var(--font-size-16); }
.fitout-gallery__copy h2 { margin-top: 18px; font-size: var(--font-size-30); }
.fitout-gallery__subtitle { margin-top: 10px; font-size: var(--font-size-20); }
.fitout-gallery__offer { margin-top: 22px; font-size: var(--font-size-18); }
}
@media (max-width: 942px) {
.fitout-gallery__copy { padding: 0;}
.fitout-gallery__eyebrow { font-size: var(--font-size-14); }
.fitout-gallery__copy h2 { margin-top: 18px; font-size: var(--font-size-18); margin-top: 0;}
.fitout-gallery__subtitle { margin-top: 10px; font-size: var(--font-size-16); margin-top: 0;}
.fitout-gallery__offer { margin-top: 22px; font-size: var(--font-size-14); margin-top: 0;}
}
@media (max-width: 768px) {
.fitout-gallery { gap: 2px; }
.fitout-gallery__copy { padding: 6px; }
}
@media (max-width: 540px) {
.fitout-gallery { grid-template-columns: 1fr; }
.fitout-gallery__copy { grid-column: auto; height: auto; min-height: 0; aspect-ratio: auto; overflow: visible; padding-top: 32px; padding-bottom: 32px; }
.fitout-gallery__eyebrow { font-size: var(--font-size-18); }
.fitout-gallery__copy h2 { margin-top: 18px; font-size: var(--font-size-30); }
.fitout-gallery__subtitle { margin-top: 10px; font-size: var(--font-size-20); }
.fitout-gallery__offer { margin-top: 22px; font-size: var(--font-size-18); }
}



/* Best partner */
.best-partner { color: var(--brand-green); background: var(--color-accent); }
.best-partner__inner { position: relative; isolation: isolate; min-height: 1080px; text-align: center; }
.best-partner__eyebrow { font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); }
.best-partner h2 { margin-top: 40px; font-family: 'Jalnan2', sans-serif; font-size: var(--font-size-120); line-height: 1; }
.best-partner__message { position: relative; z-index: 2; width: fit-content; margin: 96px auto 0 auto; text-align: center; color: var(--color-white); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-38); line-height: 1.65;}
.best-partner__bear { position: absolute; z-index: 0; right: 30px; bottom: 100px; width: 28%; max-width: 400px; }
.best-partner__logo { z-index: 2; width: 300px; margin: 200px auto 0 auto;}

@media (max-width: 1280px) {
.best-partner__inner { min-height: 800px; }
.best-partner h2 { font-size: var(--font-size-84); }
.best-partner__message { margin-top: 70px; font-size: var(--font-size-30); }
.best-partner__bear { right: 0; max-width: 380px; bottom: calc(var(--inner-padding-bottom) + 10px); }
.best-partner__logo { width: 240px; }
}

@media (max-width: 768px) {
.best-partner__inner { width: calc(100% - 32px); min-height: 500px; }
.best-partner__eyebrow { font-size: var(--font-size-16); }
.best-partner h2 { margin-top: 24px; font-size: var(--font-size-45); letter-spacing: -2px; }
.best-partner__message { margin-top: 20px; transform: none; font-size: var(--font-size-20); text-align: center; }
.best-partner__bear { position:static; margin: 0 auto; max-width: 290px; }
.best-partner__logo { width: 180px;  margin: 0 auto;}
}

.best-partner__eyebrow, .best-partner h2, .best-partner__message { position: relative; z-index: 2; }



/* Game advantages */
.game-advantages { background: var(--color-section-bg); }
.game-advantages__heading { text-align: center; }
.game-advantages__heading > p:first-child { font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-38); }
.game-advantages h2 { margin-top: 16px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-68); line-height: 1.15; letter-spacing: -5px; }
.game-advantages__highlight { margin-top: 58px; color: var(--color-orange); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); }
.game-advantages__highlight strong { font-size: var(--font-size-45); font-weight: 400; }
.game-advantages__content { display: grid; grid-template-columns: minmax(0, 859px) minmax(340px, 1fr); align-items: center; margin-top: 80px; gap: 50px;}
.game-advantages__screen { position: relative; width: 100%; aspect-ratio: 859 / 483; overflow: hidden; background: var(--color-text); border-radius: 10px; }
.game-advantages__slide { position: absolute; inset: 0; opacity: 0; transform: scale(1.025); transition: opacity 0.65s ease, transform 2.6s ease; }
.game-advantages__slide.is-active { z-index: 1; opacity: 1; transform: scale(1); }
.game-advantages__slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.game-advantages__list { display: grid; gap: 42px; color: var(--color-muted); font-size: var(--font-size-30); }
.game-advantages__list li { display: flex; align-items: center; }
.game-advantages__list img { flex: 0 0 44px; width: 44px; height: 42px; margin-right: 24px; }

@media (max-width: 1280px) {
.game-advantages h2 { margin-top: 0; font-size: var(--font-size-58); }
.game-advantages__heading > p:first-child { font-size: var(--font-size-30); }
.game-advantages__highlight { margin-top: 20px;}
.game-advantages__content { grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr); margin-top: 20px; gap: 30px; }
.game-advantages__list { gap: 30px; font-size: var(--font-size-24); }
.game-advantages__list img { flex: 0 0 40px; width: 40px; height: auto; margin-right: 15px; }
}
@media (max-width: 768px) {
.game-advantages__heading > p:first-child { font-size: var(--font-size-24); }
.game-advantages__highlight { margin-top: 10px; font-size: var(--font-size-18); }
.game-advantages__highlight strong { font-size: var(--font-size-30); }
.game-advantages__content { grid-template-columns: 1fr; margin-top: 20px; gap: 15px; }
.game-advantages__list { width: fit-content; margin: 0 auto; gap: 15px; font-size: var(--font-size-20); }
.game-advantages__list img { flex: 0 0 36px; width: 36px; height: auto; margin-right: 15px; }
}



/* Company introduction */
.company-intro { color: var(--color-company-text); background: var(--color-visual-bg) url('../img/bg_company-intro.png') center center / cover no-repeat; }
.company-intro__inner { isolation: isolate; }
.company-intro h2 { z-index: 2; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-58); text-align: center; }
.company-intro__content { position: relative; z-index: 2; width: min(930px, 70%); margin-top: 70px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }
.company-intro__content p { line-height: 1.75; }
.company-intro__content p + p { margin-top: 32px; }
.company-intro__content p:last-child { margin-top: 80px;}
.company-intro__bear { position: absolute; z-index: 1; right: 40px; bottom: calc(var(--inner-padding-bottom) + 80px); width: 100%; max-width: 431px; }

@media (max-width: 1280px) {
.company-intro h2 { font-size: var(--font-size-45); }
.company-intro__content { width: 72%; margin-top: 56px; font-size: var(--font-size-18); }
.company-intro__content p + p { margin-top: 24px; }
.company-intro__bear { right: 0; max-width: 360px;  bottom: calc(var(--inner-padding-bottom) + 20px);}
}

@media (max-width: 768px) {
.company-intro h2 { font-size: var(--font-size-38); }
.company-intro__content { width: 100%; margin-top: 48px; font-size: var(--font-size-16); line-height: 1.7; }
.company-intro__content br { display: none; }
.company-intro__bear { z-index: 0; right: 0; bottom: calc(var(--inner-padding-bottom) + 20px); max-width: 300px; opacity: 0.38; }
}


/* Shared section styles */
/*.system-composition, .premium-space, .investment-plan, .startup-process { background: var(--color-white); }*/
.system-composition__heading, 
.premium-space__heading, 
.investment-plan__heading, 
.startup-process__heading,
.game-advantages__heading { text-align: center; }

.system-composition__badge, 
.premium-space__badge, 
.investment-plan__badge, 
.startup-process__badge,
.game-advantages__badge { display: inline-flex; align-items: center; min-height: 36px; padding: 0 24px; border-radius: 999px; color: var(--color-white); background: var(--brand-green); font-size: var(--font-size-18); }

.system-composition h2, 
.premium-space h2, 
.investment-plan h2,
.startup-process h2 { margin-top: 16px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-58); line-height: 1.15; letter-spacing: -5px; }

.system-composition__heading > p:last-child,
.premium-space__heading > p:last-child,
.investment-plan__heading > p:last-child, 
.startup-process__heading > p:last-child { margin-top: 16px; color: var(--color-muted); font-size: var(--font-size-20); }



@media (max-width: 1024px) {
.system-composition h2, 
.premium-space h2, 
.investment-plan h2,
.startup-process h2,
.game-advantages h2 { font-size: var(--font-size-45); }
}

@media (max-width: 640px) {
.system-composition__badge, 
.premium-space__badge, 
.investment-plan__badge, 
.startup-process__badge,
.game-advantages__badge {font-size: var(--font-size-14); }

.system-composition h2, 
.premium-space h2, 
.investment-plan h2,
.startup-process h2, 
.game-advantages h2 { font-size: var(--font-size-38); letter-spacing: -2px; }

.system-composition__heading > p:last-child, 
.premium-space__heading > p:last-child, 
.investment-plan__heading > p:last-child, 
.startup-process__heading > p:last-child { font-size: var(--font-size-16); margin-top: 10px; }
}





/* System composition */
.system-composition__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); margin-top: 30px; gap: 24px; }
.system-card { grid-column: span 2; min-height: 300px; padding: 20px; border: 1px solid var(--color-card-border); border-radius: 24px; background: var(--color-card-bg); }
.system-card--wide { grid-column: span 3; min-height: 330px; }
.system-card h3 { display: flex; align-items: center; color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.system-card h3 img { width: 54px; height: 46px; margin-right: 14px; }
.system-card__products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; min-height: 235px; margin-top: 8px; }
.system-card__products figure { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; min-height: 205px; padding: 0 16px; }
.system-card__products figure + figure { border-left: 1px solid var(--color-card-border); }
.system-card__products img { width: auto; max-height: 175px; object-fit: contain; }
.system-card__products--sensor figure:first-child img { width: min(100%, 301px); }
.system-card__products figcaption { margin-top: 18px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }
.system-card__single { display: flex; align-items: center; justify-content: center; height: 205px; padding: 8px; }
.system-card__single img { width: auto; max-width: 100%; max-height: 185px; object-fit: contain; }

@media (max-width: 1024px) {
.system-composition__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.system-card, .system-card--wide { grid-column: span 1; }
.system-card:last-child { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
.system-composition__grid { grid-template-columns: 1fr; margin-top: 20px; gap: 16px; }
.system-card, .system-card--wide, .system-card:last-child { grid-column: auto; }
.system-card h3 { font-size: var(--font-size-18); }
.system-card h3 img { width: 40px; height: auto; margin-right: 10px; }
.system-card__products figcaption { font-size: var(--font-size-16); }
}



/* Premium space */
.premium-space__content { display: grid; grid-template-columns: minmax(0, 960px) minmax(360px, 1fr); align-items: center; margin-top: 30px; gap: 42px; }
.premium-space__photo { position: relative; width: 100%; aspect-ratio: 979 / 660; overflow: hidden; border-radius: 24px; box-shadow: 8px 10px 12px var(--color-space-shadow); background: var(--color-text); }
.premium-space__slides, .premium-space__slide { position: absolute; inset: 0; }
.premium-space__slide { opacity: 0; pointer-events: none; transition: opacity 0.45s ease; }
.premium-space__slide.is-active { opacity: 1; pointer-events: auto; }
.premium-space__slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.premium-space__control { position: absolute; z-index: 2; top: 50%; display: grid; width: 58px; height: 82px; place-items: center; transform: translateY(-50%); background: rgba(0, 0, 0, 0.28); transition: background-color 0.2s ease; }
.premium-space__control:hover { background: rgba(0, 0, 0, 0.5); }
.premium-space__control:focus-visible { outline: 3px solid var(--color-white); outline-offset: -4px; }
.premium-space__control--prev { left: 0; border-radius: 0 10px 10px 0; }
.premium-space__control--next { right: 0; border-radius: 10px 0 0 10px; }
.premium-space__control img { display: block; width: 24px; max-height: 42px; }
.premium-space__status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.premium-space__kicker { font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }
.premium-space__details h3 { color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-38); }
.premium-space__details h3::after { display: block; width: 60px; height: 3px; margin-top: 5px; background: var(--brand-green); content: ''; }
.premium-space__description { margin-top: 15px; color: var(--color-muted); font-size: var(--font-size-18); line-height: 1.45; }
.premium-space__features { display: grid; margin-top: 20px; gap: 10px; }
.premium-space__features li { display: flex; align-items: center; color: var(--color-muted); font-size: var(--font-size-16); }
.premium-space__features img { flex: 0 0 54px; width: 54px; height: 46px; margin-right: 16px; }
.premium-space__features span { display: flex; flex-direction: column; }
.premium-space__features strong { margin-bottom: 4px; color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }

@media (max-width: 1024px) {
.premium-space__content { grid-template-columns: 1fr; gap: 20px; }
.premium-space__details { width: min(720px, 100%); margin: 0 auto; }
}

@media (max-width: 640px) {
.premium-space__kicker { font-size: var(--font-size-16); } 
.premium-space__photo { border-radius: 14px; }
.premium-space__control { width: 42px; height: 62px; }
.premium-space__control img { width: 18px; }
.premium-space__details h3 { font-size: var(--font-size-30); }
.premium-space__description { font-size: var(--font-size-16); }
.premium-space__features { gap: 22px; }
.premium-space__features span { font-size: var(--font-size-14); }
.premium-space__features strong { font-size: var(--font-size-18); } 
}



/* Investment plan */
.investment-plan__tables { display: grid; margin-top: 30px; gap: 58px; }
.investment-table h3 { width: 322px; padding: 12px 20px; border-radius: 9px 9px 0 0; color: var(--color-white); background: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); text-align: center; }
.investment-table__scroll { overflow-x: auto; }
.investment-table table { width: 100%; font-size: var(--font-size-20); text-align: center; border-left: 1px solid var(--color-table-line); border-top: 1px solid var(--color-table-line);}
.investment-table caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.investment-table th, .investment-table td {padding: 10px; border-right: 1px solid var(--color-table-line); border-bottom: 1px solid var(--color-table-line); }
.investment-table tr > :first-child { border-left: 1px solid var(--color-table-line); }
.investment-table thead { color: var(--color-white); background: var(--color-table-green); font-family: 'NanumBarunGothicBold', sans-serif; }
.investment-table thead th:nth-child(1) { width: 14%; }
.investment-table thead th:nth-child(2) { width: 19%; }
.investment-table thead th:nth-child(3) { width: 15%; }
.investment-table thead th:nth-child(4) { width: 9%; }
.investment-table thead th:nth-child(5) { width: 16%; }
.investment-table thead th:nth-child(6) { width: 27%; }
.investment-table tbody th { font-weight: 400; }
.investment-table__amount { color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.investment-table tfoot { background: var(--color-total-bg); }
.investment-table tfoot th { color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; }
.investment-table tfoot td:nth-child(5) { color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); }
.investment-plan__notice { display: flex; align-items: center; margin-top: 60px; padding: 16px 28px; border: 1px solid var(--color-table-line); border-radius: 9px; background: var(--color-notice-bg); font-size: var(--font-size-18); }
.investment-plan__notice img { width: 54px; height: 46px; margin-right: 20px; }

@media (max-width: 640px) {
.investment-plan__inner { width: calc(100% - 32px); padding: 72px 0 80px 0; }
.investment-plan__tables { gap: 30px; }
.investment-table h3 { width: 240px; font-size: var(--font-size-16); }
.investment-table table { font-size: var(--font-size-14); }
.investment-table th, .investment-table td {padding: 5px; }
.investment-table__amount { font-size: var(--font-size-18); }
.investment-table tfoot td:nth-child(5) { font-size: var(--font-size-20); }
.investment-plan__notice { align-items: flex-start; margin-top: 30px; padding: 14px; font-size: var(--font-size-14); }
.investment-plan__notice img { width: 32px; height: auto; margin-right: 12px; }
}



/* Profit analysis */
.profit-analysis h2 { font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-58); text-align: center; }
.profit-analysis h2 small { font-size: var(--font-size-30); }
.profit-analysis__cards { display: grid; margin-top: 30px; gap: 54px; }
.profit-card { display: grid; grid-template-columns: 2fr 0.95fr 1.05fr; overflow: hidden; border: 1px solid var(--color-table-line); border-radius: 10px; }
.profit-card > section + section { border-left: 1px solid var(--color-table-line); }
.profit-card h3 { display: flex; align-items: center; justify-content: center; min-height: 94px; padding: 16px; border-bottom: 1px solid var(--color-table-line); background: var(--color-total-bg); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-30); text-align: center; }
.profit-card__revenue-body { min-height: 380px; padding: 34px 28px; text-align: center; }
.profit-card__revenue-body > p { font-size: var(--font-size-20); line-height: 1.8; }
.profit-card__revenue-body > p span, .profit-card__revenue-body > p strong { color: var(--brand-green); }
.profit-card__revenue-body > p strong { font-size: var(--font-size-30); }
.profit-card__extras { display: flex; align-items: center; justify-content: center; margin-top: 42px; gap: 44px; }
.profit-card__extras > div { display: flex; flex-direction: column; align-items: center; }
.profit-card__extras > div > img { width: 108px; height: 108px; }
.profit-card__extras b { margin-top: 10px; font-size: var(--font-size-20); }
.profit-card__extras span { margin-top: 10px; padding: 10px 20px; border-radius: 999px; color: var(--color-white); background: var(--brand-green); font-size: var(--font-size-18); }
.profit-card__plus { width: 72px; }
.profit-card__expense > div, .profit-card__result > div { display: flex; min-height: 380px; flex-direction: column; align-items: center; justify-content: center; padding: 28px; }
.profit-card__expense p { margin-bottom: 26px; color: var(--brand-green); font-size: var(--font-size-18); text-align: center; }
.profit-card__expense ul { font-size: var(--font-size-20); line-height: 1.75; }
.profit-card__expense li { text-align: center; }
.profit-card__expense strong { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--color-table-line); color: var(--brand-green); font-size: var(--font-size-30); text-align: center; }
.profit-card__result img { width: 108px; height: 108px; }
.profit-card__result strong { margin-top: 10px; font-size: var(--font-size-24); }
.profit-card__result p { margin-top: 12px; padding: 10px 30px; border-radius: 999px; color: var(--color-white); background: var(--brand-green); font-size: var(--font-size-20); text-align: center; }
.profit-card__result p b { font-size: var(--font-size-45); font-weight: 400; }
.profit-card__result small { margin-top: 12px; color: var(--color-muted); font-size: var(--font-size-16); text-align: center; }

@media (max-width: 1024px) {
.profit-card { grid-template-columns: 1fr; }
.profit-card > section + section { border-top: 1px solid var(--color-table-line); border-left: 0; }
.profit-card h3 { min-height: auto; font-size: var(--font-size-24); padding: 15px;}

.profit-card__revenue-body { min-height: auto; padding: 20px 10px;}
.profit-card__revenue-body > p { font-size: var(--font-size-18);}
.profit-card__revenue-body > p strong { font-size: var(--font-size-24); }
.profit-card__extras { margin-top: 20px; gap: 44px; }
.profit-card__extras span { margin-top: 10px; padding: 5px 10px; font-size: var(--font-size-16); }
}

@media (max-width: 640px) {
.profit-analysis__inner { width: calc(100% - 32px); padding: 72px 0 80px; }
.profit-analysis h2 { font-size: var(--font-size-30); }
.profit-analysis h2 small { display: block; margin-top: 8px; font-size: var(--font-size-18); }
.profit-analysis__cards { margin-top: 10px; gap: 32px; }

.profit-card h3 { min-height: auto; font-size: var(--font-size-18); padding: 10px;}

.profit-card__revenue-body { min-height: 0; padding: 28px 16px; }
.profit-card__extras { margin-top: 10px; gap: 16px; }
.profit-card__extras > div > img { width: 76px; height: 76px; }
.profit-card__plus { width: 42px; }
.profit-card__extras b { font-size: var(--font-size-16); }
.profit-card__expense > div, .profit-card__result > div { min-height: auto; }
.profit-card__expense p { margin-bottom: 15px;}
.profit-card__expense li { font-size: var(--font-size-18);}
.profit-card__expense strong { margin-top: 18px; padding-top: 14px; font-size: var(--font-size-24);}

.profit-card__result img { width: 90px; height: auto; }
.profit-card__result strong { font-size: var(--font-size-20);}
.profit-card__result p { margin-top: 10px; padding: 8px 30px; font-size: var(--font-size-18); text-align: center; }
.profit-card__result p b { font-size: var(--font-size-30); }

}





/* Startup process */
.startup-process h2 span { color: var(--brand-green); }
.startup-process__list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 50px; gap: 52px; }
.startup-process__list li { position: relative; display: flex; min-height: 280px; flex-direction: column; align-items: center; justify-content: center; padding: 34px 16px 24px; border: 3px solid var(--color-process-border); border-radius: 20px; box-shadow: 4px 4px 0 var(--color-process-shadow); text-align: center; }
.startup-process__list li:nth-child(6) { grid-column: 5; grid-row: 2; }
.startup-process__list li:nth-child(7) { grid-column: 4; grid-row: 2; }
.startup-process__list li:nth-child(8) { grid-column: 3; grid-row: 2; }
.startup-process__list li:nth-child(9) { grid-column: 2; grid-row: 2; }
.startup-process__list li:nth-child(10) { grid-column: 1; grid-row: 2; }
.startup-process__list li > span { position: absolute; top: -18px; left: 50%; min-width: 68px; padding: 6px 14px; border-radius: 999px; color: var(--color-white); background: var(--brand-green); font-size: var(--font-size-24); transform: translateX(-50%); }
.startup-process__list li > img { width: 100px; height: 100px; }
.startup-process__list h3 { margin-top: 16px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }
.startup-process__list li > p { margin-top: 12px; color: var(--color-muted); font-size: var(--font-size-16); line-height: 1.45; }
.startup-process__list li::after { position: absolute; top: 50%; right: -45px; width: 28px; height: 28px; background: url('../img/process_icon_next.svg') center / contain no-repeat; content: ''; transform: translateY(-50%); }
.startup-process__list li:nth-child(5)::after { top: auto; right: 50%; bottom: -36px; transform: translateX(50%) rotate(90deg); }
.startup-process__list li:nth-child(n+6):nth-child(-n+9)::after { right: auto; left: -40px; transform: translateY(-50%) rotate(180deg); }
.startup-process__list li:nth-child(10)::after { display: none; }
.startup-process__banner { width: min(1320px, 100%); margin: 30px auto 0; }

@media (max-width: 1024px) {
.startup-process__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 32px; }
.startup-process__list li, .startup-process__list li:nth-child(n) { grid-column: auto; grid-row: auto; }
.startup-process__list li::after { display: none; }
.startup-process__list li > span { font-size: var(--font-size-20);}
}

@media (max-width: 640px) {
.startup-process__inner { width: calc(100% - 32px); padding: 72px 0 60px; }
.startup-process__list { grid-template-columns: 1fr; margin-top: 56px; }
.startup-process__list li { min-height: 250px;  padding: 34px 15px 10px 15px;}
.startup-process__list li > span { font-size: var(--font-size-18);}
.startup-process__list li > img { width: 80px; height: auto;}
.startup-process__banner { margin-top: 42px; }
}


/* Contact us */
.contact-us { position: relative; overflow: hidden; background: var(--color-contact-bg) url('../img/contactus_bg.svg') center bottom / 100% auto no-repeat; }
.contact-us__inner { display: grid; grid-template-columns: 320px minmax(0, 1000px); align-items: center; justify-content: center; width: min(1420px, calc(100% - 48px)); min-height: 1040px; margin: 0 auto; gap: 48px; }
.contact-us__intro > p:first-child { color: var(--brand-green); font-size: var(--font-size-30); }
.contact-us__intro h2 { margin-top: 30px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-58); }
.contact-us__intro h2::after { display: block; width: 86px; height: 3px; margin-top: 48px; background: var(--brand-green); content: ''; }
.contact-us__intro > p:nth-of-type(2) { margin-top: 46px; color: var(--color-muted); font-size: var(--font-size-20); line-height: 1.65; }
.contact-us__card { display: flex; width: 100%; max-width: 368px; aspect-ratio: 368 / 316; flex-direction: column; justify-content: center; margin-top: 92px; padding: 34px 48px; background: url('../img/contactus_card_bg.png') center / contain no-repeat; text-align: center; }
.contact-us__card p { color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.contact-us__card strong { margin-top: 14px; color: var(--color-text); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-38); line-height: 1.5; }
.contact-us__card em { color: var(--brand-green); }
.contact-form { padding: 76px 36px 58px; border-radius: 26px; background: var(--color-white); box-shadow: 0 5px 18px var(--color-contact-shadow); }
.contact-form > label, .contact-form__regions label { display: flex; flex-direction: column; gap: 12px; margin-bottom: 20px; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }
.contact-form__regions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
.contact-form input:not([type='checkbox']), .contact-form select, .contact-form textarea { width: 100%; border: 1px solid var(--color-input-border); border-radius: 10px; background: var(--color-white); font-family: 'NanumBarunGothic', sans-serif; font-size: var(--font-size-18); }
.contact-form input:not([type='checkbox']), .contact-form select { height: 64px; padding: 0 24px; }
.contact-form textarea { min-height: 170px; padding: 20px 24px; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { outline: 2px solid var(--brand-green); outline-offset: 1px; }
.contact-form [aria-invalid='true'] { border-color: var(--color-error); }
.contact-form__footer { display: flex; align-items: center; margin-top: 44px; }
.contact-form__agree { display: flex; align-items: center; font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-18); }
.contact-form__agree input { width: 34px; height: 34px; margin-right: 12px; accent-color: var(--brand-green); }
.contact-form__privacy { margin-left: 8px; color: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-18); }
.contact-form__submit { display: flex; align-items: center; justify-content: center; width: 220px; min-height: 74px; margin-left: auto; border-radius: 999px; color: var(--color-white); background: var(--brand-green); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-20); }
.contact-form__submit span { margin-left: 34px; font-size: var(--font-size-38); line-height: 1; }
.contact-form__status { min-height: 24px; margin-top: 18px; color: var(--brand-green); font-size: var(--font-size-16); text-align: right; }
.contact-form__status.is-error { color: var(--color-error); }
.privacy-dialog { width: min(560px, calc(100% - 32px)); padding: 32px; border: 0; border-radius: 18px; box-shadow: 0 8px 30px var(--color-contact-shadow); }
.privacy-dialog::backdrop { background: var(--color-contact-shadow); }
.privacy-dialog h2 { font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.privacy-dialog p { margin-top: 20px; font-size: var(--font-size-16); line-height: 1.7; }
.privacy-dialog button { display: block; margin: 28px 0 0 auto; padding: 10px 28px; border-radius: 999px; color: var(--color-white); background: var(--brand-green); }

@media (max-width: 1024px) {
.contact-us__inner { grid-template-columns: 1fr; padding: 90px 0 130px; }
.contact-us__intro { text-align: center; }
.contact-us__intro h2::after { margin-right: auto; margin-left: auto; }
.contact-us__card { margin: 48px auto 0; }
}

@media (max-width: 640px) {
.contact-us__inner { width: calc(100% - 32px); padding: 72px 0 100px; }
.contact-us__intro > p:first-child { font-size: var(--font-size-24);}
.contact-us__intro h2 { font-size: var(--font-size-38); margin-top: 0; }
.contact-us__intro h2::after { margin-top: 15px;}
.contact-us__intro > p:nth-of-type(2) { margin-top: 15px; font-size: var(--font-size-18); }
.contact-form { padding: 32px 18px; border-radius: 18px; }
.contact-form__regions { grid-template-columns: 1fr; gap: 0; }
.contact-form__footer { flex-wrap: wrap; }
.contact-form__agree, .contact-form__privacy { font-size: var(--font-size-16); }
.contact-form__submit { width: 100%; margin: 28px 0 0; }
.contact-form__status { text-align: left; }
}



/* Site footer */
.site-footer { color: var(--color-white); background: var(--color-footer-bg); }
.site-footer__top { display: grid; grid-template-columns: 0.8fr 0.8fr 1.0fr 1.0fr; width: min(1420px, calc(100% - 48px)); max-width: 1420px; margin: 0 auto; padding: 50px 10px; }
.site-footer__top > * { min-width: 0; padding: 0 20px; }
.site-footer__top > *:first-child { padding-left: 0; }
.site-footer__top > *:last-child { padding-right: 0; }
.site-footer__top > * + * { border-left: 1px solid var(--color-footer-line); }
.site-footer h2 { color: var(--color-footer-title); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.site-footer__brand > img { max-width: 200px; }
.site-footer__brand > p { margin-top: 50px; font-size: var(--font-size-16); line-height: 1.75; }
.site-footer__sns { display: flex; margin-top: 50px; gap: 20px; }
.site-footer__sns a { width: 50px;}
.site-footer__menu ul { display: grid; margin-top: 30px; gap: 15px; }
.site-footer__menu a { display: flex; align-items: center; justify-content: space-between; font-size: var(--font-size-16); }
.site-footer__menu a img { width: 9px; height: 16px; }
.site-footer__phone { display: flex; align-items: center; margin-top: 30px; }
.site-footer__phone > img { width: 70px; height: 70px; margin-right: 10px; }
.site-footer__phone span { display: flex; flex-direction: column; font-size: var(--font-size-16); }
.site-footer__phone a { margin-top: 8px; font-size: var(--font-size-38); }
.site-footer__contact > p { margin-top: 20px; font-size: var(--font-size-18); }
.site-footer__reservation { display: flex; align-items: center; min-height: 70px; margin-top: 30px; padding: 10px 20px; border: 1px solid var(--color-white); font-size: var(--font-size-20); }
.site-footer__reservation img:first-child { width: 26px; height: 26px; margin-right: 18px; }
.site-footer__reservation img:last-child { width: 9px; height: 16px; margin-left: auto; }
.site-footer__company dl { display: grid; margin-top: 44px; gap: 20px; }
.site-footer__company dl div { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 5px; font-size: var(--font-size-14); }
.site-footer__company dt { font-family: 'NanumBarunGothicBold', sans-serif; }
.site-footer__company dd { color: var(--color-white); font-family: 'NanumBarunGothicBold', sans-serif; font-size: inherit; line-height: 1.6; overflow-wrap: break-word;}
.site-footer__bottom { display: grid; grid-template-columns: 1fr 1.8fr; align-items: center; width: min(1420px, calc(100% - 48px)); margin: 0 auto; padding: 40px 0 48px; border-top: 1px solid var(--color-footer-line); gap: 22px 34px; }
.site-footer__legal nav { display: flex; gap: 24px; }
.site-footer__legal nav a + a { padding-left: 24px; border-left: 1px solid var(--color-footer-line); }
.site-footer__legal p { margin-top: 18px; color: var(--color-footer-muted); font-size: var(--font-size-14); }
.site-footer__strengths { display: grid; grid-template-columns: repeat(3, 1fr); padding-left: 34px; border-left: 1px solid var(--color-footer-line); gap: 28px; }
.site-footer__strengths li { display: flex; align-items: center; }
.site-footer__strengths img { width: 70px; max-height: 70px; margin-right: 18px; }
.site-footer__strengths span { display: flex; flex-direction: column; color: var(--color-footer-muted); font-size: var(--font-size-14); }
.site-footer__strengths strong { margin-bottom: 6px; color: var(--color-white); font-size: var(--font-size-18); font-weight: 400; }
.site-footer__notice { grid-column: 2; align-self: start; padding-left: 34px; color: var(--color-footer-muted); font-size: var(--font-size-14); line-height: 1.7; word-break: keep-all; }

@media (max-width: 1024px) {
.site-footer__top { grid-template-columns: repeat(2, 1fr); gap: 60px 0; }
.site-footer__top > * { padding: 0 32px; }
.site-footer__top > *:nth-child(3) { padding-left: 0; border-left: 0; }
.site-footer__sns { display: flex; gap: 10px; }
.site-footer__sns a { width: 50px;}
.site-footer__bottom { grid-template-columns: 1fr; }
.site-footer__strengths { padding: 32px 0 0; border-top: 1px solid var(--color-footer-line); border-left: 0; }
.site-footer__notice { grid-column: 1; padding-left: 0; }
}

@media (max-width: 640px) {
.site-footer__top, .site-footer__bottom { width: calc(100% - 32px); }
.site-footer__top { grid-template-columns: 1fr; padding: 72px 0 56px; gap: 42px; }
.site-footer__top > * { padding: 0 0 42px; border-bottom: 1px solid var(--color-footer-line); }
.site-footer__top > * + * { border-left: 0; }
.site-footer__top > *:last-child { padding-bottom: 0; border-bottom: 0; }
.site-footer__brand > p, .site-footer__sns { margin-top: 32px; }
.site-footer__phone { margin-top: 32px; }
.site-footer__phone a { font-size: var(--font-size-30); }
.site-footer__strengths { grid-template-columns: 1fr; }
.site-footer__legal nav { flex-wrap: wrap; gap: 12px; }
.site-footer__legal nav a + a { padding-left: 12px; }
}



/* Project slider */
.project-slider__viewport { position: relative; width: min(1440px, 100%); aspect-ratio: 16 / 9; margin: 100px auto; overflow: hidden; background: var(--color-text); }
.project-slider__slides, .project-slider__slide { position: absolute; inset: 0; }
.project-slider__slide { opacity: 0; pointer-events: none; transform: scale(1.025); transition: opacity 0.65s ease, transform 5.5s ease; }
.project-slider__slide.is-active { z-index: 1; opacity: 1; pointer-events: auto; transform: scale(1); }
.project-slider__slide img { width: 100%; height: 100%; object-fit: cover; }
.project-slider__control { position: absolute; z-index: 3; top: 0; bottom: 0; display: flex; align-items: center; width: 190px; padding: 24px; color: var(--color-white); background: linear-gradient(90deg, var(--color-slider-overlay), transparent); font-family: 'NanumBarunGothicBold', sans-serif; font-size: var(--font-size-24); }
.project-slider__control--prev { left: 0; justify-content: flex-end; }
.project-slider__control--next { right: 0; justify-content: flex-start; background: linear-gradient(270deg, var(--color-slider-overlay), transparent); }
.project-slider__control img { width: 42px; max-height: 66px; }
.project-slider__control--prev img { order: 2; margin-left: 16px; }
.project-slider__control--next img { margin-right: 16px; }
.project-slider__control:focus-visible { outline: 3px solid var(--color-white); outline-offset: -5px; }
.project-slider__dots { position: absolute; z-index: 4; bottom: 28px; left: 50%; display: flex; gap: 18px; transform: translateX(-50%); }
.project-slider__dots button { width: 16px; height: 16px; border: 2px solid var(--color-white); border-radius: 50%; background: var(--color-slider-dot); }
.project-slider__dots button.is-active { background: var(--brand-green); }
.project-slider__status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

@media (max-width: 768px) {
.project-slider { padding: 48px 0; }
.project-slider__control { width: 92px; padding: 12px; font-size: var(--font-size-14); }
.project-slider__control img { width: 22px; }
.project-slider__control--prev img { margin-left: 8px; }
.project-slider__control--next img { margin-right: 8px; }
.project-slider__dots { bottom: 14px; gap: 10px; }
.project-slider__dots button { width: 11px; height: 11px; }
}

@media (prefers-reduced-motion: reduce) {
.premium-space__slide,
.game-advantages__slide,
.project-slider__slide { transition: none; }
}

/* Scroll reveal motion */
.reveal-ready [data-reveal] {
  opacity: 0;
  transition:
    opacity 0.75s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms),
    transform 0.85s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0ms),
    filter 0.75s ease var(--reveal-delay, 0ms);
  will-change: opacity, transform;
}
.reveal-ready [data-reveal='up'] { transform: translate3d(0, 42px, 0); }
.reveal-ready [data-reveal='left'] { transform: translate3d(-48px, 0, 0); }
.reveal-ready [data-reveal='right'] { transform: translate3d(48px, 0, 0); }
.reveal-ready [data-reveal='zoom'] { filter: blur(3px); transform: scale(0.94); }
.reveal-ready [data-reveal].is-revealed {
  opacity: 1;
  filter: none;
  transform: translate3d(0, 0, 0) scale(1);
}

@media (max-width: 640px) {
.reveal-ready [data-reveal='left'],
.reveal-ready [data-reveal='right'] { transform: translate3d(0, 32px, 0); }
.reveal-ready [data-reveal='zoom'] { transform: scale(0.97); }
}

@media (prefers-reduced-motion: reduce) {
.reveal-ready [data-reveal] {
  opacity: 1;
  filter: none;
  transform: none;
  transition: none;
}
}
