@charset "utf-8";

/* ========== 전체 서브페이지 스타일 (컨텐츠만) ========== */
.real-cont {--font-display:'gmarketsans','Pretendard',sans-serif; --color-heading:#242424; --color-body:#454545; --color-border:#dddddd; --color-gray-bg:#f8f8f8; --color-white:#fff;}

.greeting {display:grid; grid-template-columns:100%; width:100%;}
.greeting__media {grid-area:1 / 1; align-self:start; justify-self:end; width:61.3333%; aspect-ratio:783 / 678; margin:var(--space-80) 0 0; border-radius:var(--radius-24); overflow:hidden;}
.greeting__media img {width:100%; height:100%; object-fit:cover; display:block;}
.greeting__card {grid-area:1 / 1; align-self:start; justify-self:start; z-index:1; box-sizing:border-box; display:flex; flex-direction:column; gap:var(--space-32); width:calc(61.3333% - 100px); height:auto; padding:var(--space-80); border-radius:var(--radius-24); background:linear-gradient(133deg, rgba(255, 255, 255, 0.9) 9.64%, rgba(255, 255, 255, 0.72) 100%); backdrop-filter:blur(10px); box-shadow:0 0 12px rgba(0, 0, 0, 0.08);}
.greeting__head {display:flex; flex-direction:column; gap:var(--space-16); align-items:flex-start;}
.greeting__eyebrow {margin:0; font-family:var(--font-display); font-size:var(--font-size-16); font-weight:600; line-height:1.625em; color:var(--color-primary); letter-spacing:0.01em; text-transform:uppercase;}
.greeting__title {margin:0; font-size:var(--font-size-36); font-weight:600; line-height:1.278em; color:var(--color-heading);}
.greeting__title-line {display:block;}
.greeting__title em {font-style:normal; font-weight:700; background:linear-gradient(180deg, var(--color-sub), var(--color-primary)); -webkit-background-clip:text; background-clip:text; color:transparent;}
.greeting__txt {display:flex; flex-direction:column; gap:var(--space-40); align-items:flex-start; width:100%;}
.greeting__body {display:flex; flex-direction:column; gap:var(--space-24); width:100%; font-size:var(--font-size-18); font-weight:400; line-height:1.778em; color:var(--color-body);}
.greeting__body p {margin:0;}
.greeting__sign {margin:0; font-size:var(--font-size-18); font-weight:600; line-height:1.444em; color:var(--color-heading);}

.history-list {position:relative; display:flex; flex-direction:column; gap:var(--space-100); width:100%;}
.history-list::before {content:""; position:absolute; left:50%; top:20px; bottom:20px; width:2px; background:rgba(59, 141, 227, 0.2); transform:translateX(-50%);}
.history-item {display:flex; align-items:flex-start; gap:calc(40px + var(--space-80) * 2); position:relative; z-index:1;}
.history-item__year {margin:0; flex:1 1 0; min-width:0; text-align:right; font-family:var(--font-display); font-weight:500; font-size:40px; line-height:1em; color:var(--color-heading);}
.history-item__dot {position:absolute; left:50%; top:0; z-index:1; width:40px; height:40px; transform:translateX(-50%); background:url("/images/sub/icon-history-dot.svg") no-repeat center / contain;}
.history-item__dot img {display:none;}
.history-item__events {display:flex; flex-direction:column; gap:var(--space-20); flex:1 1 0; min-width:0; padding-top: 5px;}
.history-event {display:flex; gap:var(--space-12); align-items:flex-start;}
.history-event__month {box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; width:40px; height:24px; margin-top:var(--space-8); padding:4px 0; border-radius:50px; background:rgba(59, 141, 227, 0.1); font-size:16px; font-weight:600; line-height:1em; color:var(--color-primary); flex-shrink:0;}
.history-event__txt {margin:0; font-size:18px; font-weight:400; line-height:1.5em; letter-spacing:-0.54px; color:var(--color-body);}

.cert-list {display:flex; flex-wrap:wrap; justify-content:center; column-gap:var(--space-30); row-gap:var(--space-60); width:100%;}
.cert-item {display:flex; flex-direction:column; align-items:center; flex:0 0 calc((100% - 120px) / 5); max-width:calc((100% - 120px) / 5); gap:var(--space-24);}
.cert-item__thumb {position:relative; width:100%; aspect-ratio:210 / 297; background:var(--color-white); border:1px solid var(--color-border); box-sizing:border-box; overflow:hidden;}
.cert-item__thumb img {position:absolute; left:0; top:0; width:100%; height:100%; object-fit:contain; display:block;}
.cert-item__name {margin:0; width:100%; text-align:center; font-size:var(--font-size-16); font-weight:500; line-height:1.5em; letter-spacing:-0.48px; color:var(--color-body);}

.loc-info {display:flex; flex-direction:column; gap:var(--space-48); width:100%; align-items:stretch;}
.loc-cards {display:flex; gap:var(--space-24); width:100%; align-items:stretch;}
.loc-card {box-sizing:border-box; flex:1 0 0; min-width:0; display:flex; flex-direction:column; justify-content:space-between; align-items:flex-end; gap:0; padding:var(--space-32); background:var(--color-white); border:1px solid var(--color-border); border-radius:var(--radius-24);}
.loc-card__txt {display:flex; flex-direction:column; gap:var(--space-16); align-items:flex-start; width:100%;}
.loc-card__label {display:flex; align-items:center; gap:var(--space-10); margin:0; font-family:var(--font-display); font-size:var(--font-size-16); font-weight:600; line-height:1.625em;}
.loc-card__value {margin:0; font-size:var(--font-size-20); font-weight:600; line-height:1.5em; color:var(--color-heading); word-break:keep-all;}
.loc-card__icon {display:flex; align-items:center; justify-content:center; width:80px; height:80px; border-radius:50%; flex-shrink:0;}
.loc-card__icon img {display:block; object-fit:contain;}
.loc-card--pin {color:var(--color-primary);}
.loc-card--pin .loc-card__icon {background:rgba(59, 141, 227, 0.06);}
.loc-card--pin .loc-card__icon img {width:31px; height:38px;}
.loc-card--tel {color:var(--color-sub);}
.loc-card--tel .loc-card__icon {background:rgba(116, 185, 255, 0.06);}
.loc-card--tel .loc-card__icon img {width:80px; height:80px;}
.loc-card--mail {color:var(--color-primary);}
.loc-card--mail .loc-card__icon {background:rgba(59, 141, 227, 0.06);}
.loc-card--mail .loc-card__icon img {width:33px; height:27px;}
.loc-map {width:100%; height:500px; border-radius:var(--radius-24); overflow:hidden; background:var(--color-gray-bg);}
.loc-map .root_daum_roughmap,
.loc-map .root_daum_roughmap .wrap_map {width:100%; height:100%;}
