/* PREMIUM recruiting brand site (.pm). Photography-led, editorial rhythm, calm motion. Honors prefers-reduced-motion. */
.pm{--pm-ink:#14243a;--pm-muted:#4a5c70;--pm-accent:#0e7a5f;--pm-accent-d:#0b6350;--pm-tint:#eef5f1;--pm-line:#dbe6e0;color:var(--pm-ink);font-size:16px;line-height:1.95;padding-bottom:84px}
html:has(.pm),body:has(.pm){overflow-x:clip}
body:has(.pm) main.shell{max-width:none;padding-left:0;padding-right:0}
body:has(.pm) main.shell>.breadcrumbs,body:has(.pm) main.shell>.rk-demo{max-width:1120px;margin-left:auto;margin-right:auto;padding-left:clamp(16px,4vw,24px);padding-right:clamp(16px,4vw,24px)}
.pm *{box-sizing:border-box}
.pm img{display:block;width:100%;height:100%;object-fit:cover}
.pm a{color:inherit}
.pm-eye{margin:0 0 10px;font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--pm-accent-d);text-transform:uppercase}
.pm h1,.pm h2,.pm h3{margin:0;letter-spacing:-.035em;line-height:1.4}
.pm h2{font-size:clamp(26px,3.6vw,42px);font-weight:800}
.pm-text p{margin:0 0 14px;max-width:38em}
.pm-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:999px;background:var(--pm-accent);color:#fff!important;font-weight:800;text-decoration:none;font-size:16px;box-shadow:0 12px 26px -12px rgba(14,122,95,.7);transition:transform .25s ease,box-shadow .25s ease}
.pm-btn:hover{transform:translateY(-2px)}
.pm-btn:focus-visible,.pm a:focus-visible,.pm summary:focus-visible,.pm-rail:focus-visible{outline:3px solid #005fcc;outline-offset:3px}
.pm-btn-ghost{background:rgba(255,255,255,.16);border:1.5px solid rgba(255,255,255,.7);box-shadow:none;backdrop-filter:blur(6px)}
/* hero: full bleed */
.pm-hero{position:relative;width:100vw;margin-left:calc(50% - 50vw);min-height:min(86vh,760px);display:flex;align-items:flex-end;color:#fff;background:#14243a;overflow:hidden}
.pm-hero-photo{position:absolute;inset:0}
.pm-hero-photo img{transform:scale(1.04);transition:transform 1.6s cubic-bezier(.2,.7,.2,1)}
.pm-hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,36,58,.15) 0%,rgba(20,36,58,.35) 45%,rgba(20,36,58,.82) 100%)}
.pm-hero-copy{position:relative;z-index:1;width:min(1120px,100%);margin:0 auto;padding:120px clamp(20px,5vw,48px) 56px}
.pm-hero .pm-eye{color:#bfe6d6}
.pm .pm-hero h1,.pm .pm-end h2{color:#fff}
.pm-hero h1{font-size:clamp(34px,6vw,72px);font-weight:900;line-height:1.2;margin:0 0 18px;max-width:14em}
.pm-catch{margin:0 0 22px;max-width:34em;font-size:clamp(16px,1.6vw,20px);line-height:1.9;color:#eaf1f6}
.pm-facts{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 26px;padding:0;list-style:none}
.pm-facts li{padding:6px 16px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);font-size:14px;font-weight:700;backdrop-filter:blur(6px)}
.pm-facts b{margin-right:6px;font-size:1.1em}
.pm-hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.pm-hero-plain{background:linear-gradient(135deg,#0b3d33,#14243a);min-height:420px}
.pm-nav{position:sticky;top:0;z-index:5;display:flex;gap:4px;overflow-x:auto;padding:8px clamp(16px,4vw,32px);margin:0 calc(50% - 50vw);width:100vw;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--pm-line);scrollbar-width:none;justify-content:center}
.pm-nav::-webkit-scrollbar{display:none}
.pm-nav a{flex:0 0 auto;padding:10px 16px;border-radius:999px;font-size:14px;font-weight:700;text-decoration:none;color:var(--pm-muted)}
.pm-nav a:hover{background:var(--pm-tint);color:var(--pm-accent-d)}
.pm-sec{max-width:1120px;margin:0 auto;padding:clamp(56px,9vw,120px) clamp(20px,4vw,24px) 0}
.pm-head{margin:0 0 32px}.pm-head p:last-child:not(.pm-eye){margin:12px 0 0;color:var(--pm-muted)}
.pm-split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,72px);align-items:center}
.pm-split-rev{grid-template-columns:.95fr 1.05fr}
.pm-split-one{grid-template-columns:1fr}
.pm-quote{margin:18px 0 22px;padding:0 0 0 20px;border-left:3px solid var(--pm-accent);font-size:clamp(19px,2vw,24px);font-weight:700;line-height:1.7;color:var(--pm-ink)}
.pm-fig{margin:0;overflow:hidden;border-radius:6px}
.pm-fig-tall{aspect-ratio:4/5;border-radius:200px 200px 6px 6px}
.pm-fig-wide{aspect-ratio:3/2;border-radius:6px 80px 6px 6px}
.pm-fig-sq{aspect-ratio:1/1;border-radius:6px}
.pm-fig-person{aspect-ratio:4/5;border-radius:6px}
.pm-fig img{will-change:transform}
/* photo rail: horizontal inside the section only */
.pm-rail-sec{max-width:none;padding-left:0;padding-right:0}
.pm-rail-sec .pm-head{max-width:1120px;margin-left:auto;margin-right:auto;padding:0 clamp(20px,4vw,24px)}
.pm-rail{display:flex;gap:clamp(12px,2vw,24px);overflow-x:auto;scroll-snap-type:x proximity;padding:8px max(clamp(20px,4vw,24px),calc(50% - 560px)) 24px;scrollbar-width:none;overscroll-behavior-x:contain}
.pm-rail::-webkit-scrollbar{display:none}
.pm-rail-item{flex:0 0 min(78vw,420px);margin:0;aspect-ratio:3/4;border-radius:6px;overflow:hidden;scroll-snap-align:center;transition:transform .5s ease}
.pm-rail-low{margin-top:44px}
/* work */
.pm-time{list-style:none;margin:22px 0 0;padding:0;border-left:2px solid var(--pm-line)}
.pm-time li{position:relative;display:grid;grid-template-columns:62px 1fr;gap:10px;padding:8px 0 8px 22px;font-size:15px;line-height:1.7}
.pm-time li::before{content:"";position:absolute;left:-6px;top:17px;width:10px;height:10px;border-radius:50%;background:var(--pm-accent)}
.pm-time time{font-weight:800;color:var(--pm-accent-d);font-variant-numeric:tabular-nums}
.pm-jobs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:44px}
.pm-job{display:grid;gap:6px;padding:24px;border:1px solid var(--pm-line);border-radius:18px;background:#fff;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease,border-color .3s}
.pm-job:hover{transform:translateY(-3px);border-color:var(--pm-accent);box-shadow:0 18px 38px -22px rgba(20,36,58,.5)}
.pm-job-role{font-size:13px;color:var(--pm-muted)}.pm-job strong{font-size:19px;line-height:1.55}.pm-job-pay{font-weight:800;color:var(--pm-accent-d);font-size:18px}.pm-job-meta{font-size:14px;color:var(--pm-muted)}.pm-job-go{margin-top:6px;font-weight:800;color:var(--pm-accent-d);font-size:14px}
/* people: three different layouts */
.pm-person{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,5vw,64px);align-items:center;margin:0 0 clamp(48px,8vw,96px)}
.pm-person-1{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}.pm-person-1 .pm-fig{order:2}
.pm-person-2{grid-template-columns:minmax(0,1fr)}.pm-person-2 .pm-fig{aspect-ratio:16/9;border-radius:6px 6px 6px 80px}
.pm-person-role{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--pm-accent-d)}
.pm-person h3{font-size:clamp(26px,3vw,38px);margin-bottom:14px}
.pm-person-msg{margin:0 0 18px;font-size:clamp(17px,1.8vw,21px);font-weight:700;line-height:1.75}
.pm-person dl{margin:0;display:grid;gap:12px}.pm-person dl div{padding:12px 0;border-top:1px solid var(--pm-line)}.pm-person dt{font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--pm-muted)}.pm-person dd{margin:2px 0 0}
/* workplace */
.pm-env-photos{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;margin:0 0 32px}
.pm-env-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 40px}
.pm-env-grid article{padding:22px 0;border-top:1px solid var(--pm-line)}.pm-env-grid h3{font-size:17px;margin-bottom:8px;color:var(--pm-accent-d)}
/* brand message: tinted full-bleed band */
.pm-brand{max-width:none;margin-top:clamp(56px,9vw,120px);padding:clamp(56px,8vw,96px) 0;background:var(--pm-tint)}
.pm-brand-in{max-width:1120px;margin:0 auto;padding:0 clamp(20px,4vw,24px)}
.pm-brand-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px 48px;margin-top:28px}.pm-brand-cols h3{font-size:16px;margin-bottom:8px;color:var(--pm-accent-d)}
/* sns */
.pm-sns-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.pm-sns{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--pm-line);border-radius:18px;background:#fff;text-decoration:none;transition:transform .3s,box-shadow .3s}
.pm-sns:hover{transform:translateY(-3px);box-shadow:0 16px 34px -22px rgba(20,36,58,.5)}
.pm-sns-mark{flex:0 0 52px;height:52px;border-radius:14px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:15px;background:var(--pm-ink)}
.pm-sns-ig .pm-sns-mark{background:linear-gradient(135deg,#8a4fd6,#d6447a 55%,#f09433)}.pm-sns-tt .pm-sns-mark{background:#111}.pm-sns-yt .pm-sns-mark{background:#d62b2b}.pm-sns-x .pm-sns-mark{background:#000}.pm-sns-web .pm-sns-mark{background:var(--pm-accent)}
.pm-sns-body{display:grid;min-width:0;line-height:1.5}.pm-sns-body small{font-size:12px;color:var(--pm-muted)}.pm-sns-body strong{overflow-wrap:anywhere}.pm-sns-body em{font-style:normal;font-size:13px;color:var(--pm-muted)}
.pm-sns-go{margin-left:auto;font-size:20px;color:var(--pm-accent-d)}
.pm-video{margin:0 0 20px}.pm-video a{position:relative;display:grid;place-content:center;gap:8px;justify-items:center;min-height:300px;border-radius:20px;background:linear-gradient(135deg,#14243a,#0b3d33);color:#fff;text-decoration:none;text-align:center;padding:24px}
.pm-play{width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.95);position:relative}.pm-play::after{content:"";position:absolute;left:29px;top:22px;border-left:20px solid var(--pm-accent);border-top:14px solid transparent;border-bottom:14px solid transparent}
.pm-video small{opacity:.8}.pm-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:20px}
/* access */
.pm-access-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}
.pm-map{position:relative;min-height:340px;border-radius:20px;overflow:hidden;display:grid;place-content:center;gap:16px;justify-items:center;text-align:center;background:linear-gradient(0deg,rgba(255,255,255,.55),rgba(255,255,255,.55)),repeating-linear-gradient(0deg,#e6efe9 0 1px,transparent 1px 46px),repeating-linear-gradient(90deg,#e6efe9 0 1px,transparent 1px 46px),#f1f6f3;border:1px solid var(--pm-line)}
.pm-pin{width:26px;height:26px;background:var(--pm-accent);border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 0 0 8px rgba(14,122,95,.18)}
.pm-dl{margin:0;display:grid;align-content:start}.pm-dl div{padding:14px 0;border-top:1px solid var(--pm-line)}.pm-dl dt{font-size:12px;font-weight:800;color:var(--pm-muted);letter-spacing:.06em}.pm-dl dd{margin:2px 0 0}
/* faq */
.pm-faq-list{max-width:820px}.pm-faq details{border-top:1px solid var(--pm-line);padding:0}.pm-faq details:last-child{border-bottom:1px solid var(--pm-line)}
.pm-faq summary{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:64px;padding:12px 4px;font-weight:800;font-size:17px;cursor:pointer;list-style:none}.pm-faq summary::-webkit-details-marker{display:none}
.pm-faq summary::after{content:"+";font-size:26px;font-weight:400;color:var(--pm-accent-d);transition:transform .25s}.pm-faq details[open] summary::after{transform:rotate(45deg)}
.pm-faq details p{margin:0 0 18px;padding:0 4px;color:var(--pm-muted)}
/* closing */
.pm-end{position:relative;width:100vw;margin:clamp(64px,9vw,120px) 0 0 calc(50% - 50vw);min-height:420px;display:grid;place-items:center;color:#fff;background:#14243a;overflow:hidden;text-align:center}
.pm-end-photo{position:absolute;inset:0}.pm-end-photo::after{content:"";position:absolute;inset:0;background:rgba(20,36,58,.66)}
.pm-end-copy{position:relative;z-index:1;padding:64px 24px;max-width:640px}.pm-end h2{margin-bottom:14px;font-size:clamp(26px,4vw,44px)}.pm-end p{margin:0 0 24px;color:#e3ecf3}
.pm-sticky{display:none}
.pm-foot{max-width:1120px;margin:32px auto 0;padding:0 24px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--pm-muted)}
/* reveal (only when JS is on) */
.pm-js .pm-reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.pm-js .pm-reveal.is-in{opacity:1;transform:none}
.pm-js .pm-hero-photo img{transform:scale(1.12)}.pm-js .pm-hero.is-in .pm-hero-photo img{transform:scale(1.02)}
@media(max-width:860px){
 .pm-split,.pm-split-rev,.pm-person,.pm-person-1,.pm-access-grid,.pm-env-photos{grid-template-columns:1fr}
 .pm-person-1 .pm-fig{order:0}
 .pm-fig-tall{border-radius:140px 140px 6px 6px}
 .pm-hero{min-height:88svh}.pm-hero-copy{padding:96px 20px 40px}
 .pm-hero-cta .pm-btn{flex:1 1 100%}
 .pm-nav{justify-content:flex-start}
 .pm-rail-low{margin-top:28px}
 .pm-sticky{display:block;position:fixed;left:0;right:0;bottom:0;z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-top:1px solid var(--pm-line)}
 .pm-sticky .pm-btn{width:100%;min-height:50px}
 .pm-map{min-height:260px}
}
@media(prefers-reduced-motion:reduce){
 .pm-js .pm-reveal{opacity:1;transform:none;transition:none}.pm-hero-photo img,.pm-js .pm-hero-photo img{transform:none;transition:none}.pm-btn,.pm-job,.pm-sns{transition:none}.pm-fig img{transform:none!important}
}

/* Keep each interview prompt and its answer in one full-width block. */
.pm-person dl{grid-template-columns:minmax(0,1fr)}
.pm-person dt{font-size:14px;line-height:1.55}
.pm-person dd{min-width:0;font-size:16px;font-weight:400;line-height:1.85;overflow-wrap:anywhere}
