/* Standalone web homepage, separate from the Naver blog skin. */
body[data-page="home"] { --paper: #fffefa; --line: #ded8cf; background: #fffefa; }
body[data-page="home"] .site-header--home { position: relative; inset: auto; height: 92px; background: #fffefa; border: 0; }
body[data-page="home"] .site-header--home .wordmark { margin-left: clamp(24px, 4.1vw, 72px); }
body[data-page="home"] .site-header--home .wordmark__name { font-size: 28px; }
body[data-page="home"] .site-header--home .nav-shell { padding-right: clamp(24px, 4.1vw, 72px); }
body[data-page="home"] .site-header--home .primary-nav a { font-family: var(--sans); font-size: 12px; }
body[data-page="home"] .home-hero { height: clamp(540px, 38.1vw, 730px); min-height: 0; max-height: none; grid-template-columns: 41% 59%; }
body[data-page="home"]:not([data-design]) .hero-copy { position: relative; min-height: 0; padding: clamp(70px, 5.2vw, 105px) clamp(24px, 4.5vw, 76px) 48px; justify-content: flex-start; background: #fffefa; }
body[data-page="home"]:not([data-design]) .hero-copy .eyebrow { position: static; margin: 0 0 clamp(34px, 3.2vw, 56px); font-size: 9px; letter-spacing: .3em; }
body[data-page="home"]:not([data-design]) .hero-title { font-size: clamp(62px, 5vw, 88px); line-height: .96; letter-spacing: -.052em; }
body[data-page="home"]:not([data-design]) .hero-service { margin: clamp(26px, 2.4vw, 42px) 0 0; color: #625d56; font: 400 clamp(12px, .98vw, 16px)/1.75 var(--sans); letter-spacing: -.02em; }
body[data-page="home"] .hero-service strong { color: #242321; font: 400 clamp(21px, 1.6vw, 28px)/1.5 var(--serif); letter-spacing: -.035em; }
body[data-page="home"] .hero-action { width: min(310px, 100%); margin-top: auto; padding: 15px 0 10px; font: 500 14px/1.2 var(--sans); border-top: 1px solid #6f6961; }
body[data-page="home"] .hero-film { height: 100%; min-height: 0; }
body[data-page="home"] .hero-film video { object-position: center; }
body[data-page="home"] .home-locations-direct { padding: 30px clamp(24px, 4.1vw, 72px) 50px; background: #fffefa; border-top: 0; }
body[data-page="home"] .home-locations-direct__heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding: 0 0 21px; }
body[data-page="home"] .home-locations-direct__heading h2 { margin: 0; font: 400 clamp(22px, 1.9vw, 32px)/1.4 var(--serif); letter-spacing: -.045em; word-break: keep-all; }
body[data-page="home"] .home-locations-direct__heading span { flex: none; padding-bottom: 4px; color: #70685e; font: 500 9px/1 var(--sans); letter-spacing: .24em; }
body[data-page="home"] .home-locations-direct .location-lines { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); border: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
body[data-page="home"] .home-locations-direct .location-line,
body[data-page="home"] .home-locations-direct .location-line:hover { min-width: 0; min-height: 108px; padding: 14px 11px 13px; gap: 4px; border: 0; border-right: 1px solid var(--line); background: transparent; }
body[data-page="home"] .home-locations-direct .location-line:last-child { border-right: 0; }
body[data-page="home"] .home-locations-direct .location-line:hover { background: #f3f0e9; }
body[data-page="home"] .home-locations-direct .location-line__index { font-size: 10px; }
body[data-page="home"] .home-locations-direct .location-line__name { font: 400 clamp(12px, 1.08vw, 18px)/1.25 var(--serif); letter-spacing: -.05em; }
body[data-page="home"] .home-locations-direct .location-line__regions { font-size: 9px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body[data-page="home"] .home-case-stream { padding: clamp(56px, 6vw, 96px) clamp(24px, 4.1vw, 72px) clamp(70px, 7vw, 112px); background: #fffefa; border-top: 1px solid var(--line); }
body[data-page="home"] .home-case-stream__heading { margin-bottom: 36px; display: flex; align-items: end; justify-content: space-between; gap: 28px; }
body[data-page="home"] .home-case-stream__heading .eyebrow { margin-bottom: 20px; font-size: 9px; letter-spacing: .28em; }
body[data-page="home"] .home-case-stream__heading h2 { margin: 0; font: 400 clamp(32px, 3.5vw, 58px)/1.18 var(--serif); letter-spacing: -.045em; word-break: keep-all; }
body[data-page="home"] .home-case-stream__heading > a { flex: none; padding-bottom: 6px; border-bottom: 1px solid #59534b; font-size: 12px; }
body[data-page="home"] .home-case-stream__heading > a span { margin-left: 28px; }
body[data-page="home"] .home-case-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
body[data-page="home"] .home-case-card { min-width: 0; }
body[data-page="home"] .home-case-card__media { display: block; aspect-ratio: 1.38; overflow: hidden; background: #e5ded4; }
body[data-page="home"] .home-case-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
body[data-page="home"] .home-case-card__media:hover img { transform: scale(1.025); }
body[data-page="home"] .home-case-card__copy { position: relative; min-height: 118px; padding: 14px 32px 0 0; border-top: 1px solid var(--line); }
body[data-page="home"] .home-case-card__number { position: absolute; top: 16px; right: 0; color: #81796e; font: 400 10px/1 var(--serif); }
body[data-page="home"] .home-case-card__copy p { margin: 0 0 10px; color: #776f66; font-size: 10px; }
body[data-page="home"] .home-case-card__copy h3 { margin: 0; font: 400 clamp(16px, 1.5vw, 25px)/1.38 var(--serif); letter-spacing: -.04em; word-break: keep-all; }
body[data-page="home"] .home-case-card__arrow { display: inline-block; margin-top: 11px; font-size: 15px; }
body[data-page="home"] .site-footer { background: #fffefa; }
@media (max-width: 980px) {
  body[data-page="home"] .home-locations-direct .location-lines { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body[data-page="home"] .home-locations-direct .location-line:nth-child(3n) { border-right: 0; }
  body[data-page="home"] .home-locations-direct .location-line:nth-child(-n+6) { border-bottom: 1px solid var(--line); }
  body[data-page="home"] .home-locations-direct .location-line__name { font-size: 17px; }
  body[data-page="home"] .home-locations-direct .location-line__regions { font-size: 10px; }
}
@media (max-width: 720px) {
  body[data-page="home"] .site-header--home { position: relative; height: 66px; min-height: 0; grid-template-columns: 1fr auto; border-bottom: 1px solid var(--line); background: #fffefa; }
  body[data-page="home"] .site-header--home .wordmark { margin-left: 22px; gap: 5px; }
  body[data-page="home"] .site-header--home .wordmark__name { font-size: 21px; }
  body[data-page="home"] .site-header--home .wordmark__descriptor { font-size: 6px; }
  body[data-page="home"] .site-header--home .nav-shell { padding: 0 22px 0 0; }
  body[data-page="home"]:not([data-design]) .home-hero { display: flex; flex-direction: column; height: auto; min-height: 0; padding: 0; }
  body[data-page="home"]:not([data-design]) .hero-copy { order: 1; min-height: 0; padding: 38px 24px 48px; }
  body[data-page="home"]:not([data-design]) .hero-copy .eyebrow { position: static; margin-bottom: 26px; font-size: 9px; }
  body[data-page="home"]:not([data-design]) .hero-title { font-size: clamp(48px, 13vw, 70px); line-height: .96; }
  body[data-page="home"]:not([data-design]) .hero-service { margin-top: 27px; font-size: 14px; }
  body[data-page="home"] .hero-service strong { font-size: 21px; }
  body[data-page="home"]:not([data-design]) .hero-action { width: 100%; min-height: 48px; margin-top: 28px; padding: 14px 0 10px; font-size: 14px; }
  body[data-page="home"] .hero-film { order: 0; width: 100%; height: clamp(320px, 95vw, 500px); min-height: 0; max-height: none; }
  body[data-page="home"] .home-locations-direct { padding: 29px 18px 37px; }
  body[data-page="home"] .home-locations-direct__heading { align-items: start; padding-bottom: 18px; }
  body[data-page="home"] .home-locations-direct__heading h2 { max-width: 230px; font-size: 22px; }
  body[data-page="home"] .home-locations-direct__heading span { padding-top: 9px; font-size: 7px; }
  body[data-page="home"] .home-locations-direct .location-line,
  body[data-page="home"] .home-locations-direct .location-line:hover { min-height: 86px; padding: 10px 7px; }
  body[data-page="home"] .home-locations-direct .location-line__index { font-size: 8px; }
  body[data-page="home"] .home-locations-direct .location-line__arrow { font-size: 10px; }
  body[data-page="home"] .home-locations-direct .location-line__name { font-size: clamp(11px, 3.2vw, 15px); }
  body[data-page="home"] .home-locations-direct .location-line__regions { font-size: 8px; }
  body[data-page="home"] .home-case-stream { order: 2; padding: 0 0 28px; }
  body[data-page="home"] .home-case-stream__heading { align-items: start; display: block; margin: 0; padding: 52px 24px 30px; }
  body[data-page="home"] .home-case-stream__heading .eyebrow { margin-bottom: 15px; font-size: 8px; }
  body[data-page="home"] .home-case-stream__heading h2 { font-size: 35px; }
  body[data-page="home"] .home-case-stream__heading > a { display: inline-block; margin-top: 22px; padding-bottom: 7px; }
  body[data-page="home"] main { display: flex; flex-direction: column; }
  body[data-page="home"] .home-hero { order: 1; }
  body[data-page="home"] .home-locations-direct { order: 3; }
  body[data-page="home"] .home-case-grid { grid-template-columns: 1fr; gap: 0; }
  body[data-page="home"] .home-case-card { border-top: 1px solid var(--line); }
  body[data-page="home"] .home-case-card__media { aspect-ratio: 1 / 1; }
  body[data-page="home"] .home-case-card__copy { min-height: 0; padding: 30px 24px 42px; border-top: 0; }
  body[data-page="home"] .home-case-card__number { top: 32px; right: 24px; font-size: 12px; }
  body[data-page="home"] .home-case-card__copy p { margin-bottom: 16px; font-size: 12px; }
  body[data-page="home"] .home-case-card__copy h3 { font-size: clamp(28px, 7vw, 34px); }
  body[data-page="home"] .home-case-card__arrow { min-width: 48px; min-height: 48px; display: inline-flex; align-items: center; font-size: 24px; }
}
