/* Home page, closing section: the ownership poster on blue, then the industries list on paper. */

/* ---------- part 1: ownership ---------- */
.own-band{background:var(--blue);color:#fff;padding:clamp(72px,9vw,136px) 0 clamp(64px,7vw,104px);overflow:hidden}
.own-band .label{color:#fff;opacity:.85}
.own-band :focus-visible{outline-color:var(--yellow)}
.own-band .container{container-type:inline-size}

.own-poster{font-family:var(--display);font-weight:800;font-size:11.7vw;font-size:12.8cqw;line-height:.86;letter-spacing:-.055em;margin-top:clamp(18px,2.4vw,34px);text-transform:none}
.own-row{display:block;white-space:nowrap}
.own-row+.own-row{text-align:right;padding-right:.04em}
.own-line{display:inline-block;overflow:hidden;overflow:clip;overflow-clip-margin:.02em;padding:.06em .04em .14em 0;margin:-.06em -.04em -.14em 0;vertical-align:top;clip-path:inset(0 -.2em 0 -.2em)}
.own-line>span{display:inline-block}
.own-poster em{font-style:normal;color:var(--yellow)}

.js .own-band:not(.in) .own-line>span{transform:translateY(112%)}
.js .own-line>span{transition:transform 1.1s var(--ease);transition-delay:calc(var(--l)*110ms)}

.own-foot{margin-top:clamp(44px,6vw,92px)}
.own-points{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,3vw,48px)}
.own-points li{border-top:1px solid rgba(255,255,255,.34);padding-top:20px}
.own-points h3{font-family:var(--display);font-weight:800;font-size:clamp(1.3rem,1.05rem + .8vw,1.75rem);letter-spacing:-.035em;line-height:1.1}
.own-points p{margin-top:10px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.86);max-width:42ch}
.own-link{display:inline-flex;align-items:center;gap:12px;margin-top:clamp(34px,4vw,56px);font-weight:650;font-size:18px;color:#fff;text-decoration:none;border-bottom:2px solid var(--yellow);padding-bottom:4px}
.own-link .i-arrow{transition:transform .3s var(--ease)}
.own-link:hover .i-arrow,.own-link:focus-visible .i-arrow{transform:translateX(6px)}

@media (max-width:759px){
  .own-poster{font-size:19.8vw;font-size:22.3cqw;line-height:.88}
  .own-row,.own-row+.own-row{text-align:left;padding-right:0}
  .own-line{display:block;width:max-content;max-width:none}
  .own-points{grid-template-columns:1fr;gap:26px}
}

/* ---------- part 2: industries ---------- */
.ind-band{background:var(--paper);padding:clamp(64px,8vw,120px) 0}
.ind{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr);gap:clamp(32px,5vw,88px);align-items:start}
.ind-list{border-top:1px solid var(--line)}
.ind-list li{border-bottom:1px solid var(--line)}
.ind-row{position:relative;display:grid;grid-template-columns:2.4em minmax(0,1fr) auto auto;align-items:center;column-gap:clamp(10px,1.4vw,22px);padding:clamp(15px,1.5vw,22px) 4px;text-decoration:none;color:var(--ink);transition:opacity .35s}
.ind-num{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--muted);align-self:start;padding-top:.75em;font-variant-numeric:tabular-nums}
.ind-text{display:block;min-width:0;transition:transform .5s var(--ease)}
.ind-name{display:block;font-family:var(--display);font-weight:600;font-size:clamp(1.5rem,1rem + 1.45vw,2.3rem);line-height:1.06;letter-spacing:-.045em;text-wrap:balance;transition:color .25s}
.ind-desc{display:block;margin-top:6px;font-size:15.5px;line-height:1.45;color:var(--muted)}
.ind-kind{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.ind-go{grid-column:4;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);color:var(--ink);transition:background-color .25s,border-color .25s,color .25s,transform .5s var(--ease)}
.ind-go .i-arrow{transition:transform .5s var(--ease)}

.ind-row:hover .ind-name,.ind-row:focus-visible .ind-name{color:var(--blue)}
.ind-row:hover .ind-text,.ind-row:focus-visible .ind-text{transform:translateX(10px)}
.ind-row:hover .ind-go,.ind-row:focus-visible .ind-go{background:var(--blue);border-color:var(--blue);color:#fff}
.ind-row:hover .ind-go .i-arrow,.ind-row:focus-visible .ind-go .i-arrow{transform:translateX(4px)}
.ind-row:focus-visible{outline-offset:-3px;border-radius:10px}
@media (hover:hover){
  .ind-list:hover .ind-row:not(:hover){opacity:.42}
}
.ind-list:focus-within .ind-row:not(:focus-visible):not(:hover){opacity:.42}
.ind-list:focus-within:not(:has(:focus-visible)) .ind-row{opacity:1}
@media (hover:hover){
  .ind-list:focus-within:not(:has(:focus-visible)):hover .ind-row:not(:hover){opacity:.42}
}

.ind-side{position:sticky;top:calc(var(--header-h) + 28px)}
.ind-frame{position:relative;aspect-ratio:1/1.08;border-radius:var(--radius);overflow:hidden;background:var(--paper-2);isolation:isolate}
.ind-pic{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity .6s ease,transform 1.2s var(--ease)}
.ind-pic.is-active{opacity:1;transform:none;z-index:1}
.ind-pic--type{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(22px,2.4vw,36px) 26px 110px;background:var(--ink);color:#fff}
.ind-pic-num{font-family:var(--display);font-weight:800;font-size:clamp(7rem,13vw,13rem);line-height:.8;letter-spacing:-.06em;color:var(--yellow)}
.ind-pic-line{font-family:var(--display);font-weight:600;font-size:clamp(1.5rem,1rem + 1.5vw,2.4rem);line-height:1.08;letter-spacing:-.04em;max-width:13em;text-wrap:balance}
.ind-caps{position:absolute;inset:auto 0 0 0;z-index:2;padding:90px 26px 24px;background:linear-gradient(to top,rgba(11,13,20,.72),rgba(11,13,20,0));color:#fff}
.ind-cap{grid-area:1/1;font-family:var(--display);font-weight:700;font-size:clamp(1.15rem,.9rem + .7vw,1.6rem);letter-spacing:-.035em;line-height:1.1;overflow:hidden;padding-bottom:.12em}
.ind-caps{display:grid}
.ind-cap{align-self:end}
.ind-cap span{display:block;opacity:0;transform:translateY(105%);transition:transform .6s var(--ease),opacity .3s}
.ind-cap.is-active span{opacity:1;transform:none}
.ind-all{display:inline-block;margin-top:clamp(28px,3vw,44px)}

@media (max-width:1099px){
  .ind-kind{display:none}
  .ind-row{grid-template-columns:2.4em minmax(0,1fr) auto}
  .ind-go{grid-column:3}
}
@media (max-width:859px){
  .ind{grid-template-columns:1fr}
  .ind-side{display:none}
  .ind-kind{display:block;grid-column:2;grid-row:2;margin-top:10px}
  .ind-go{grid-row:1/3;grid-column:3}
}
@media (max-width:479px){
  .ind-row{grid-template-columns:minmax(0,1fr) auto;padding:18px 0}
  .ind-num{display:none}
  .ind-kind{grid-column:1}
  .ind-go{grid-column:2;width:40px;height:40px}
  .ind-name{font-size:1.5rem}
  .ind-desc{font-size:15px}
}

@media (prefers-reduced-motion:reduce){
  .js .own-band:not(.in) .own-line>span{transform:none}
  .ind-pic,.ind-cap span{transform:none}
  .ind-row:hover .ind-text,.ind-row:focus-visible .ind-text,.ind-row:hover .ind-go .i-arrow,.ind-row:focus-visible .ind-go .i-arrow{transform:none}
}
.own-band .label{color:#fff;opacity:1}
.own-points p{color:rgba(255,255,255,.94)}
