@charset "UTF-8";
:root{--cream:#f6f3eb;--green:#173e32;--ink:#213c33;--muted:#69786e;--gold:#a37e3b;--burgundy:#793e46;--line:#d6d2c4;--sage:#e6eadf;--paper:#fcfaf5;--header-height:94px;--gutter:clamp(24px,5.5vw,112px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"Pretendard","Noto Sans KR","Apple SD Gothic Neo",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.7;word-break:keep-all;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a,summary{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:7px}
::selection{background:#c8b788;color:var(--green)}
svg{display:block}
.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:650;letter-spacing:-.045em;line-height:1.3}
.container{width:calc(100% - var(--gutter)*2);max-width:1540px;margin-inline:auto}
[id]{scroll-margin-top:calc(var(--header-height) + 24px)}
.skip-link{position:fixed;z-index:100;top:12px;left:12px;transform:translateY(-200%);padding:12px 20px;background:var(--green);color:var(--cream)}
.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:94px;padding:23px var(--gutter);background:rgba(246,243,235,.97);border-bottom:1px solid rgba(33,60,51,.08);backdrop-filter:blur(16px)}
.brand{display:inline-flex;align-items:center;gap:clamp(20px,3vw,54px);flex-shrink:0}
.wordmark{font-size:clamp(25px,2.5vw,38px);letter-spacing:-.045em;font-weight:750;line-height:1}
.brand-label{font-size:12px;letter-spacing:.19em;color:var(--gold);padding-top:4px}
.main-nav{display:flex;align-items:center;gap:clamp(24px,4vw,72px);font-size:16px;white-space:nowrap}
.main-nav a{position:relative;padding:8px 0}
.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.main-nav a:hover::after{transform:scaleX(1)}
.nav-roles{display:flex;align-items:center;gap:30px}
.nav-roles svg{width:35px;height:20px}
.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream)}
.hero-copy{position:relative;padding:64px 48px 60px var(--gutter);min-height:620px;display:flex;align-items:flex-start;flex-direction:column}
.eyebrow{font-size:12px;font-weight:450;letter-spacing:.18em;color:var(--muted);line-height:1.5}
.hero-eyebrow{color:#d2c49e;margin-bottom:40px;letter-spacing:.14em;font-size:13px}
.hero h1{font-size:clamp(38px,4.2vw,76px);line-height:1.43;letter-spacing:-.055em;font-weight:650}
.hero-subtitle{font-size:clamp(17px,1.6vw,26px);color:#d3ded1;margin:28px 0 24px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:15px 22px;min-height:54px;min-width:250px;font-size:18px;line-height:1.5;letter-spacing:.01em;transition:background .25s,transform .25s;border:0;cursor:pointer}
.button svg{width:36px;height:23px;transition:transform .25s}
.button:hover svg{transform:translateX(5px)}
.button-burgundy{background:var(--burgundy);color:#fff9f3;border-radius:2px}
.button-burgundy:hover{background:#8b4b53}
.hero-index{font-size:9px;letter-spacing:.2em;color:#b8c5b49c;margin-top:36px}
.hero-visual{position:relative;overflow:hidden;min-width:0}
.salon-image{width:100%;height:100%;position:absolute;inset:0}
.hero-visual figcaption{position:absolute;bottom:24px;right:var(--gutter);padding:7px 18px;background:var(--cream);color:var(--ink);font-size:13px;min-width:210px}
.hero-visual figcaption span{letter-spacing:.06em;margin-right:4px}
.section{padding-top:72px}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px}
.section h2{font-size:clamp(30px,3vw,46px);margin-top:10px}
.section-lead{color:var(--muted);font-size:17px;line-height:1.7}
.section-team{padding-bottom:54px;border-bottom:1px solid var(--line)}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.team-member{display:grid;grid-template-columns:minmax(140px,.95fr) 1.2fr;align-items:center;gap:25px}
.portrait{width:100%;height:auto;aspect-ratio:4/3;background:#847e52;overflow:hidden}
.team-member h3{font-size:clamp(19px,1.8vw,28px);line-height:1.45}
.member-role{color:var(--gold);font-size:16px;margin-top:3px}
.member-description{font-size:15px;color:var(--muted);line-height:1.9;margin-top:20px}
.work-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:34px 0 26px}
.gold-label{font-size:14px;color:var(--gold);margin-bottom:6px}
.work-fact h3{font-size:clamp(23px,2.1vw,33px);margin-bottom:7px}
.work-fact>p:last-child{color:var(--muted);font-size:16px}
.shift-grid{display:grid;grid-template-columns:repeat(3,1fr);background:var(--sage);padding:23px 26px;gap:28px}
.shift-grid>div{display:flex;align-items:baseline;gap:20px}
.shift-name{color:var(--muted);font-size:14px;white-space:nowrap}
.shift-grid strong{font-size:clamp(18px,1.7vw,26px);font-weight:650;letter-spacing:-.035em;white-space:nowrap}
.shift-grid p{margin-top:12px;color:var(--muted);font-size:14px}
.fine-print{font-size:13px;color:var(--muted);margin-top:16px;line-height:1.8}
.section-benefits{padding-top:74px}
.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 18px}
.benefit{background:var(--paper);display:flex;align-items:flex-start;gap:18px;padding:22px 20px;min-width:0;border-radius:2px}
.benefit>span{color:var(--gold);font-size:13px;padding-top:3px;font-variant-numeric:tabular-nums}
.benefit h3{font-size:18px;line-height:1.5;letter-spacing:-.035em}
.benefit p{font-size:15px;color:var(--muted);line-height:1.8;margin-top:10px}
.section-roles{padding-top:76px}
.section-roles .section-heading{margin-bottom:12px}
.roles-hint{font-size:13px;color:var(--muted);margin-bottom:24px}
.role{border-top:1px solid var(--line)}
.role:last-child{border-bottom:1px solid var(--line)}
.role-row{position:relative;display:grid;grid-template-columns:240px minmax(0,1fr) 40px;align-items:center;gap:38px;padding:20px 0;cursor:pointer;list-style:none}
.role-copy{padding:4px 0}
.role-copy .eyebrow{color:var(--gold);font-size:11px;letter-spacing:.15em}
.role h3{font-size:32px;margin:6px 0 14px}
.role-description{font-size:19px;line-height:1.7}
.role-manager{font-size:15px;margin-top:23px}
.role-manager span{color:var(--muted);border-left:1px solid #a7afa5;margin-left:24px;padding-left:16px}
.role-arrow{width:36px;height:24px;transition:transform .35s ease}
.role-detail{padding:4px 78px 30px 278px;color:var(--muted);font-size:16px;line-height:1.9;animation:detail-in .3s ease both}
.text-link{display:inline-flex;gap:24px;align-items:center;margin-top:18px;font-size:14px;color:var(--green);border-bottom:1px solid #aab4a8;padding-bottom:3px}
.text-link:hover{color:var(--gold)}
.section-application{padding-bottom:76px}
.application-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin:36px 0 0}
.application-steps li{display:flex;gap:24px;align-items:baseline}
.application-steps li>span{font-size:14px;color:var(--gold);letter-spacing:.1em}
.application-steps h3{font-size:23px;margin-bottom:16px}
.application-steps p{color:var(--muted);font-size:16px}
.site-footer{background:var(--green);color:var(--cream);padding:58px 0 26px}
.footer-invitation{display:flex;align-items:center;justify-content:space-between;gap:48px;padding-bottom:46px}
.footer-invitation h2{font-size:clamp(27px,3vw,44px);font-weight:600;line-height:1.5}
.footer-invitation p{font-size:18px;color:#c5d4c4;margin-top:12px}
.footer-invitation .button{flex-shrink:0}
.footer-bottom{display:flex;align-items:center;gap:32px;border-top:1px solid #ffffff24;padding-top:26px}
.footer-brand{font-size:25px;font-weight:700;letter-spacing:-.035em}
.footer-bottom p{font-size:10px;letter-spacing:.2em;color:#c5d4c4;margin-left:auto}
.back-top{font-size:12px;color:#c5d4c4;display:flex;gap:12px;align-items:center}
.intro{position:fixed;inset:0;z-index:90;background:var(--green);display:none;align-items:center;justify-content:center;color:#d7c28d;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s}
.intro-active{overflow:hidden}
.intro-active .intro{display:flex;opacity:1;visibility:visible}
.intro.is-leaving{display:flex;opacity:0;visibility:hidden;pointer-events:none}
.intro-brand{text-align:center;transform:translateY(-10px);animation:brand-in 1.1s cubic-bezier(.2,.75,.25,1) both}
.intro-emblem{width:86px;height:103px;margin:0 auto 30px}
.intro-wordmark{font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,5vw,54px);line-height:1.3;letter-spacing:.17em;padding-left:.17em;color:#f2ebd8}
.intro-line{display:block;width:46px;height:1px;background:#ccb78180;margin:24px auto 20px;transform-origin:center;animation:line-in 1s .3s both}
.intro-caption{font-size:10px;letter-spacing:.28em;color:#c5b581}
.intro-skip{position:absolute;bottom:36px;right:var(--gutter);display:flex;gap:24px;align-items:center;color:#d6d8c6;background:transparent;border:0;padding:12px;font-size:12px;cursor:pointer}
.js .reveal{opacity:0;transform:translate3d(0,26px,0);transition:opacity .8s cubic-bezier(.2,.65,.3,1),transform .8s cubic-bezier(.2,.65,.3,1);transition-delay:var(--delay,0ms)}
.js .reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.intro-active .hero .reveal{opacity:0;transform:translate3d(0,26px,0)}
@keyframes brand-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(-10px)}}
@keyframes line-in{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes detail-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1800px){.hero-copy{padding-top:85px;min-height:760px}.hero-eyebrow{margin-bottom:50px}.hero-subtitle{margin-top:36px}.hero-index{margin-top:50px}.section{padding-top:88px}.section-team{padding-bottom:70px}.role-row{grid-template-columns:285px minmax(0,1fr) 40px;gap:45px}.role-detail{padding-left:330px}.team-member{gap:30px}}
@media(max-width:1100px){
  .site-header{gap:24px;padding-block:21px;min-height:84px}.wordmark{font-size:28px}.brand{gap:20px}.brand-label{font-size:10px}.main-nav{font-size:14px;gap:25px}.nav-roles{gap:16px}.nav-roles svg{width:26px}
  .hero-copy{min-height:550px;padding-top:52px;padding-right:24px;padding-bottom:40px}.hero h1{font-size:44px}.hero-eyebrow{margin-bottom:32px}.hero-subtitle{font-size:18px}.hero-visual figcaption{right:24px;min-width:180px}.hero-index{margin-top:26px}
  .team-grid{gap:34px}.team-member{grid-template-columns:1fr;gap:16px}.team-member .portrait{max-width:100%}.member-description{margin-top:10px}.team-member h3{font-size:24px}.team-member br{display:none}
  .work-facts{gap:24px}.shift-grid{padding:20px;gap:20px}.shift-grid>div{display:block}.shift-name{display:block;margin-bottom:4px}.shift-grid strong{font-size:20px}.shift-grid p{font-size:13px}
  .benefit{padding:20px 16px;gap:12px}.benefit h3{font-size:16px}.benefit p{font-size:14px}.benefit p br{display:none}
  .role-row{grid-template-columns:210px minmax(0,1fr) 32px;gap:26px}.role h3{font-size:28px}.role-description{font-size:17px}.role-manager{font-size:14px;margin-top:15px}.role-detail{padding-left:236px;padding-right:58px}
  .application-steps{gap:24px}.application-steps li{gap:16px}.application-steps h3{font-size:21px}.application-steps p{font-size:14px}.footer-invitation{gap:28px}.footer-invitation .button{min-width:220px;font-size:16px}
}
@media(max-width:760px){
  :root{--gutter:26px;--header-height:112px}
  .site-header{display:block;padding:18px var(--gutter) 12px;min-height:0}.brand{gap:19px}.wordmark{font-size:25px}.brand-label{font-size:10px;letter-spacing:.17em}.main-nav{justify-content:space-between;gap:12px;margin-top:13px;font-size:13px}.main-nav a{padding:5px 0}.nav-roles{gap:10px}.nav-roles svg{width:23px;height:17px}
  .hero{grid-template-columns:1fr}.hero-copy{padding:48px var(--gutter) 42px;min-height:0}.hero-eyebrow{font-size:11px;margin-bottom:27px}.hero h1{font-size:clamp(38px,7.6vw,54px);line-height:1.38}.hero-subtitle{font-size:17px;margin:24px 0 20px}.hero .button{min-width:236px;font-size:16px;padding:13px 20px}.hero-index{display:none}.hero-visual{aspect-ratio:1.38;min-height:0}.hero-visual figcaption{font-size:12px;right:20px;bottom:18px;min-width:0;padding:6px 14px}
  .section{padding-top:54px}.section h2{font-size:31px;line-height:1.4;letter-spacing:-.05em}.eyebrow{font-size:10px;letter-spacing:.17em}.section-heading{display:block;margin-bottom:28px}.section-lead{font-size:15px;margin-top:16px}.desktop-break{display:none}
  .section-team{padding-bottom:42px}.team-grid{grid-template-columns:1fr;gap:28px}.team-member{grid-template-columns:minmax(110px,.85fr) 1.25fr;gap:20px}.team-member h3{font-size:19px}.member-role{font-size:13px}.member-description{font-size:13px;line-height:1.8;margin-top:10px}
  .work-facts{grid-template-columns:1fr;margin:28px 0 24px;gap:22px}.work-fact{display:grid;grid-template-columns:82px 1fr;align-items:baseline;column-gap:10px}.work-fact h3{font-size:24px;margin:0}.work-fact .gold-label{font-size:13px;margin:0}.work-fact>p:last-child{font-size:14px;grid-column:2;margin-top:5px}
  .shift-grid{grid-template-columns:1fr;gap:0;padding:8px 20px}.shift-grid>div{display:flex;align-items:baseline;gap:24px;padding:16px 0;border-bottom:1px solid #cad1c1}.shift-grid>div:last-child{border-bottom:0}.shift-name{font-size:13px;min-width:40px}.shift-grid strong{font-size:23px}.shift-grid p{margin-top:4px;font-size:13px}.fine-print{font-size:12px;line-height:1.85}
  .benefit-grid{grid-template-columns:1fr 1fr;gap:10px}.benefit{display:block;padding:18px 16px;min-height:158px}.benefit>span{display:block;font-size:11px;margin-bottom:8px;padding:0}.benefit h3{font-size:16px;line-height:1.5}.benefit p{font-size:13px;margin-top:8px;line-height:1.75}
  .section-roles .section-heading{display:flex;align-items:flex-end;gap:16px}.section-roles .section-lead{font-size:12px;margin:0 0 5px;white-space:nowrap}.roles-hint{font-size:12px;margin-bottom:18px}
  .role-row{grid-template-columns:120px minmax(0,1fr) 20px;gap:16px;padding:22px 0}.role-portrait{align-self:start;margin-top:4px}.role-copy{padding:0}.role-copy .eyebrow{font-size:9px;letter-spacing:.09em;overflow-wrap:anywhere}.role h3{font-size:25px;margin:5px 0 9px}.role-description{font-size:14px;line-height:1.7}.role-manager{font-size:12px;line-height:1.7;margin-top:13px}.role-manager span{display:block;border:0;margin:2px 0 0;padding:0}.role-arrow{width:22px;height:18px;align-self:start;margin-top:25px}.role-detail{padding:0 0 24px;font-size:14px}.text-link{font-size:13px;margin-top:12px}
  .application-steps{grid-template-columns:1fr;gap:0;margin-top:26px}.application-steps li{padding:20px 0;gap:24px;border-bottom:1px solid var(--line)}.application-steps li:last-child{border:0}.application-steps h3{font-size:22px;margin-bottom:8px}.application-steps p{font-size:14px}.section-application{padding-bottom:42px}
  .site-footer{padding-top:40px;padding-bottom:24px}.footer-invitation{display:block;padding-bottom:32px}.footer-invitation h2{font-size:29px;line-height:1.5;max-width:430px}.footer-invitation p{font-size:15px;line-height:1.8;margin-top:12px}.footer-invitation .button{margin-top:24px;min-width:235px;font-size:16px}.footer-bottom{gap:14px;flex-wrap:wrap;padding-top:24px}.footer-brand{font-size:22px}.footer-bottom p{font-size:8px;letter-spacing:.12em}.back-top{width:100%;justify-content:flex-end;margin-top:3px;font-size:11px}
  .intro-emblem{width:68px;height:82px;margin-bottom:24px}.intro-wordmark{font-size:34px}.intro-caption{font-size:9px}.intro-skip{bottom:24px}
  .js .reveal{transition-duration:.65s;transition-delay:0ms;transform:translate3d(0,20px,0)}
}
@media(max-width:390px){:root{--gutter:20px}.main-nav{gap:8px;font-size:12px}.nav-roles{gap:8px}.team-member{grid-template-columns:112px 1fr;gap:15px}.team-member h3{font-size:17px}.member-description{font-size:12px}.role-row{grid-template-columns:100px minmax(0,1fr) 18px;gap:12px}.role h3{font-size:23px}.benefit{padding:16px 12px}.benefit h3{font-size:15px}.section-roles .section-lead{font-size:11px}.hero h1{font-size:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.intro{display:none!important}.intro-active{overflow:auto}.js .reveal,.intro-active .hero .reveal{opacity:1;transform:none;transition:none}.intro-brand,.intro-line,.role-detail{animation:none}.role-arrow,.button,.button svg,.main-nav a::after{transition:none}}
@media print{.intro,.site-header,.roles-hint,.role-arrow,.button,.back-top{display:none!important}.js .reveal{opacity:1;transform:none}body{font-size:12px}.section{padding-top:25px}.role-detail{display:block!important}.hero-copy{min-height:0;padding-block:30px}.hero h1{font-size:32px}.site-footer{padding:25px 0}}

/* Department imagery and person drawers */
.department-image{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:var(--green)}
.role-row{grid-template-columns:240px minmax(0,1fr) 56px;cursor:default}
.people-hint{display:block;color:var(--gold);font-size:13px;margin-top:18px;letter-spacing:.02em}
.people-hint span{margin-left:8px}
.department-open{display:grid;place-items:center;width:56px;height:56px;padding:10px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--green);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.department-open:hover{background:var(--green);color:var(--cream);border-color:var(--green)}
.department-open .role-arrow{width:30px;height:22px;margin:0;align-self:auto}
.department-open:hover .role-arrow{transform:translateX(3px)}
.team-copy .eyebrow{color:var(--gold);font-size:10px;margin-bottom:8px}
.team-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}
.team-action .people-hint{margin:0}
.team-action .department-open{width:44px;height:44px;flex-shrink:0}
.team-action .role-arrow{width:26px}
.team-drawer{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;padding:0;margin:0;border:0;background:transparent;overflow:hidden;color:var(--ink)}
.team-drawer::backdrop{background:rgba(8,25,19,0);transition:background .4s}
.team-drawer.is-visible::backdrop{background:rgba(8,25,19,.48)}
.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(620px,100%);background:var(--cream);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .48s cubic-bezier(.22,.75,.2,1);box-shadow:-12px 0 60px #0819131a}
.team-drawer.is-visible .drawer-panel{transform:translateX(0)}
.drawer-toolbar{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;border-bottom:1px solid var(--line);flex-shrink:0}
.drawer-toolbar>span{font-size:10px;letter-spacing:.2em;color:var(--gold)}
.drawer-close{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;display:grid;place-items:center;font-size:30px;line-height:1;transition:background .2s}
.drawer-close:hover{background:var(--sage)}
.drawer-scroll{overflow-y:auto;overscroll-behavior:contain;padding:38px 40px 48px;min-height:0}
.drawer-heading .eyebrow{color:var(--gold);font-size:11px}
.drawer-heading h2{font-size:42px;margin:10px 0 16px;letter-spacing:-.05em}
#drawer-description{font-size:16px;color:var(--muted);line-height:1.8}
.people-heading{display:flex;justify-content:space-between;align-items:center;margin:32px 0 22px;padding-top:26px;border-top:1px solid var(--line)}
.people-heading h3{font-size:16px;font-weight:550;letter-spacing:-.02em}
#people-count{font-size:12px;color:var(--gold)}
.person-card+.person-card{margin-top:32px;padding-top:32px;border-top:1px solid var(--line)}
.person-portrait{width:100%;aspect-ratio:4/3;display:block;background:#847e52}
.person-info{padding-top:24px}
.person-info h3{font-size:28px}
.person-job{font-size:14px;color:var(--gold);margin-top:6px}
.person-bio{font-size:16px;line-height:1.9;color:var(--muted);margin-top:18px}
@media(min-width:1800px){.role-row{grid-template-columns:285px minmax(0,1fr) 56px}}
@media(max-width:1100px){.role-row{grid-template-columns:210px minmax(0,1fr) 56px}}
@media(max-width:760px){.role-row{grid-template-columns:112px minmax(0,1fr) 44px;gap:14px}.department-open{width:44px;height:44px;padding:8px}.department-open .role-arrow{width:25px}.people-hint{font-size:11px;margin-top:12px}.role-description{font-size:13px}.team-action{margin-top:12px}.drawer-toolbar{padding:14px 24px}.drawer-scroll{padding:28px 26px 40px}.drawer-heading h2{font-size:34px}.person-info h3{font-size:25px}.person-bio{font-size:15px}}
@media(max-width:390px){.role-row{grid-template-columns:90px minmax(0,1fr) 44px;gap:10px}.role h3{font-size:22px}.role-copy .eyebrow{font-size:8px}.team-action .people-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){.drawer-panel,.team-drawer::backdrop,.department-open,.drawer-close{transition:none}}
@media print{.team-drawer,.department-open{display:none!important}}

.section[tabindex="-1"]:focus{outline:none}
img.person-portrait{height:auto;object-fit:cover}
