/* css/firm.css */
.firm-hero{padding:clamp(32px,5vw,64px) var(--pad) clamp(48px,6vw,96px)}.firm-hero__head{max-width:1200px}.firm-hero__title{font-family:var(--font-display);font-weight:var(--fw-regular);font-size:var(--fs-title);line-height:.9;letter-spacing:-.025em;color:var(--steel)}.firm-hero__title .light{font-weight:var(--fw-thin)}.firm-hero__title strong,.firm-hero__title b{font-weight:var(--fw-regular)}.firm-hero__headline{font-family:var(--display);font-weight:var(--fw-light);font-size:clamp(1.35rem,2.2vw,2.1rem);line-height:1.25;color:var(--steel);margin-top:clamp(20px,3vw,36px);max-width:42ch;letter-spacing:-.01em}.firm-hero__visual{position:relative;margin:clamp(36px,5vw,72px) 0 0;--px: -6px;--py: -6px;background:var(--paper)}.firm-hero__picture{display:block;width:100%}.firm-hero__img{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block}.firm-hero__caption{margin-top:14px;color:var(--muted);display:block}.firm-hero__cols{margin-top:clamp(48px,6vw,96px)}.firm-tri{display:grid;gap:clamp(28px,3.5vw,52px)}.firm-tri__band{display:flex;gap:clamp(6px,.7vw,12px);height:clamp(380px,64vh,680px)}.firm-tri__panel{--f: 1;position:relative;flex:var(--f) 1 0;min-width:0;overflow:hidden;margin:0;padding:0;border:0;background:var(--paper);color:var(--white);text-align:left;cursor:pointer;transition:flex-grow var(--dur-slower) var(--ease)}.firm-tri__panel.is-open{--f: 2.6;cursor:default}.firm-tri__panel picture,.firm-tri__panel img{display:block;width:100%;height:100%}.firm-tri__panel img{object-fit:cover;transform:scale(1.06);transition:transform var(--dur-slower) var(--ease)}.firm-tri__panel.is-open img{transform:scale(1)}.firm-tri__panel--sketch img{object-position:38% 50%}.firm-tri__panel--group img{object-position:55% 50%}.firm-tri__panel--talk img{object-position:58% 50%}.firm-tri__panel:after{content:"";position:absolute;inset:45% 0 0;pointer-events:none;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--night) 78%,transparent))}.firm-tri__cap{position:absolute;left:clamp(14px,1.6vw,24px);right:clamp(14px,1.6vw,24px);bottom:clamp(14px,1.6vw,24px);z-index:1;font-family:var(--body);font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:var(--ls-label);line-height:1.5;text-transform:uppercase;text-wrap:balance}.firm-tri__panel:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.firm-tri__texts{display:grid}.firm-tri__text{grid-area:1 / 1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--gap-grid);align-items:start;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity var(--dur-base) var(--ease),transform var(--dur-base) var(--ease),visibility var(--dur-base)}.firm-tri__text.is-on{opacity:1;visibility:visible;transform:none}.firm-tri__h{grid-column:1 / span 4;font-family:var(--display);font-weight:var(--fw-regular);font-size:var(--fs-h4);line-height:1.2;letter-spacing:-.01em;color:var(--steel);text-wrap:balance}.firm-tri__text p{grid-column:6 / span 7;max-width:60ch;font-family:var(--display);font-weight:var(--fw-light);font-size:var(--fs-lead);line-height:1.32;letter-spacing:-.01em;color:var(--steel);text-wrap:pretty}.firm-tri__close{padding-top:clamp(24px,3vw,40px);max-width:62ch;margin-left:auto;font-size:var(--fs-body-sm);line-height:var(--lh-body);color:var(--ink);text-wrap:pretty}@media(max-width:899px){.firm-tri__band{flex-direction:column;height:auto}.firm-tri__panel{flex:none;height:84px;transition:height var(--dur-slower) var(--ease)}.firm-tri__panel.is-open{height:min(56vh,420px)}.firm-tri__text{grid-template-columns:1fr;gap:12px}.firm-tri__h,.firm-tri__text p{grid-column:1}.firm-tri__close{margin-left:0}}.firm-origin.name{position:relative;background:var(--steel);color:var(--white);padding:clamp(88px,12vw,200px) clamp(18px,3vw,44px);overflow:hidden;--px: var(--pad);--py: var(--pad)}.firm-origin .name__plan{position:absolute;right:-4vw;top:50%;width:min(78vw,1120px);transform:translateY(-50%);--p: 130%;-webkit-mask-image:linear-gradient(100deg,#000 calc(var(--p) - 18%),transparent var(--p));mask-image:linear-gradient(100deg,#000 calc(var(--p) - 18%),transparent var(--p))}.firm-origin .name__plan img{width:100%;height:auto;display:block}.firm-origin .name__inner{position:relative;z-index:1}.firm-origin .name__title{display:flex;flex-wrap:wrap;align-items:baseline;gap:.12em .22em;font-family:var(--display);font-weight:var(--fw-thin);font-size:clamp(3rem,11.5vw,11rem);line-height:.92;letter-spacing:-.04em;color:var(--white)}.firm-origin .name__eq{color:var(--lagoon);font-weight:var(--fw-thin)}.firm-origin .name__gloss{font-weight:var(--fw-thin);color:var(--white)}.firm-origin .name__copy{margin-top:clamp(40px,6vw,96px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px 24px;max-width:1400px}.firm-origin .name__copy .label{grid-column:1 / -1;color:#fffc}.firm-origin .name__copy p{grid-column:1 / span 6;max-width:56ch;color:#ffffffe0;text-wrap:pretty;font-size:1rem;line-height:var(--lh-body)}.firm-origin .name__copy p:nth-of-type(1){grid-column:1 / span 7;font-family:var(--display);font-weight:var(--fw-light);font-size:clamp(1.3rem,2.1vw,1.95rem);line-height:1.25;color:var(--white);letter-spacing:-.01em;max-width:var(--measure-narrow)}.firm-timeline{padding:clamp(64px,9vw,140px) var(--pad)}.firm-timeline__title{margin-top:clamp(12px,1.5vw,20px)}.timeline{position:relative;margin-top:var(--section-end);padding-top:30px}.timeline__svg{position:absolute;left:0;top:0;width:100%;height:40px;overflow:visible}.timeline__svg path{fill:none;stroke:var(--teal);stroke-width:1.5;vector-effect:non-scaling-stroke}.timeline__list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(14px,2vw,32px)}.timeline__list li{position:relative;padding-top:22px}.timeline__list li:before{content:"";position:absolute;left:0;top:-18px;width:13px;height:13px;color:var(--teal);background:linear-gradient(currentColor,currentColor) center/1px 100% no-repeat,linear-gradient(currentColor,currentColor) center/100% 1px no-repeat}.timeline__k{font-family:var(--display);font-weight:var(--fw-light);font-size:clamp(1.15rem,1.6vw,1.55rem);line-height:1.15;color:var(--steel);letter-spacing:-.015em;margin-bottom:10px}.timeline__t{font-size:.88rem;line-height:1.52;color:var(--muted);text-wrap:pretty}.firm-leadership{padding:clamp(64px,9vw,140px) var(--pad)}.firm-leadership__title{margin-top:clamp(12px,1.5vw,20px)}.firm-leadership .section__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px}.firm-leadership__list{display:grid;gap:clamp(64px,9vw,140px);margin-top:clamp(48px,6vw,96px)}.firm-leader{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(16px,3vw,40px);align-items:start;position:relative}.firm-leader:before{content:"";position:absolute;top:calc(-1*clamp(32px,4.5vw,70px) - 6px);left:-6px;right:-6px;height:var(--mark);background:var(--rule-marked);pointer-events:none}.firm-leader:first-child:before{display:none}.firm-leader__fig{grid-column:1 / span 5;position:relative;margin:0;--px: -6px;--py: -6px;background:var(--paper)}.firm-leader__fig img{width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block;filter:grayscale(1)}.firm-leader__txt{grid-column:7 / span 6;padding-top:clamp(0px,1.5vw,24px)}.firm-leader.is-flip .firm-leader__fig{grid-column:8 / span 5;grid-row:1}.firm-leader.is-flip .firm-leader__txt{grid-column:1 / span 6;grid-row:1}.firm-leader__name{font-family:var(--display);font-weight:var(--fw-thin);font-size:clamp(2.2rem,5vw,4.8rem);line-height:.96;letter-spacing:-.03em;color:var(--steel)}.firm-leader__role{margin:clamp(12px,1.5vw,20px) 0 clamp(20px,2.5vw,36px);color:var(--teal);font-weight:var(--fw-medium)}.firm-leader__bio{font-size:clamp(.95rem,1.1vw,1.05rem);line-height:var(--lh-body);color:var(--steel);max-width:58ch;text-wrap:pretty}.firm-leader__bio+.firm-leader__bio{margin-top:var(--space-4)}.firm-join{padding:clamp(56px,8vw,128px) var(--pad) clamp(72px,10vw,150px);position:relative}.firm-join__inner{position:relative;--px: -6px;--py: -6px;padding:var(--space-block) 0}.firm-join__link{display:inline-flex;align-items:center;gap:.25em;font-family:var(--display);font-weight:var(--fw-thin);font-size:clamp(2.8rem,9.5vw,9rem);line-height:.95;letter-spacing:-.035em;color:var(--steel);text-decoration:none;transition:color .4s}.firm-join__link:hover,.firm-join__link:focus-visible{color:var(--teal)}.firm-arrow{flex:none;width:.7em;height:.7em;transition:transform .7s var(--ease)}.firm-join__link:hover .firm-arrow{transform:translate(.08em,-.08em)}.firm-join__note{margin-top:clamp(18px,2vw,28px)}.firm-join__note a{color:var(--steel)}.firm-join__note a:hover{color:var(--teal)}@media(max-width:1100px){.firm-leader__fig,.firm-leader.is-flip .firm-leader__fig{grid-column:1 / span 6}.firm-leader__txt,.firm-leader.is-flip .firm-leader__txt{grid-column:1 / -1;grid-row:2}.firm-leader__fig{grid-row:1}}@media(max-width:980px){.firm-hero__cols>div{grid-column:1 / -1}.timeline{padding:0 0 0 34px}.timeline__svg{width:14px;height:100%;left:0}.timeline__list{grid-template-columns:1fr;gap:34px}.timeline__list li{padding-top:0}.timeline__list li:before{left:-34px;top:6px}.firm-origin .name__copy p,.firm-origin .name__copy p:nth-of-type(1){grid-column:1 / -1}.firm-origin .name__plan{width:130vw;right:-40vw;opacity:.5}}@media(max-width:700px){.firm-leader__fig,.firm-leader.is-flip .firm-leader__fig{grid-column:1 / -1}.firm-leader__name{max-width:none}}
