/* The sectors, labels, and hub are one radial composition; scroll owns its angle. */
.industries{position:relative;height:100svh;min-height:0;overflow:hidden;background:#0f1114}
.industries__viewport{position:relative;top:auto;height:100svh;min-height:0;overflow:hidden}
.industry-wheel{position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate}
.industry-disc{--wheel-rotation:0deg;--content-radius:28%;position:absolute;left:50%;top:5svh;width:135vw;max-width:none;aspect-ratio:1;margin:0;border:0;border-radius:50%;background:#181819;box-shadow:0 0 110px rgba(0,0,0,.45);transform:translate(-50%,-50%);transform-origin:center;will-change:transform}
.industry-disc::before,.industry-disc::after{display:none}
.industry-disc__segments{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:radial-gradient(circle,#161515 0 17%,#292321 48%,#17191b 100%);transform:rotate(var(--wheel-rotation));transform-origin:center;will-change:transform}
.industry-disc__segments::after{content:"";position:absolute;z-index:3;inset:0;border-radius:50%;background:repeating-conic-gradient(from 162deg,transparent 0 calc(360deg / var(--segment-count) - .18deg),rgba(255,235,214,.19) calc(360deg / var(--segment-count) - .18deg) calc(360deg / var(--segment-count)));pointer-events:none}
.industry-segment{position:absolute;z-index:1;inset:0;left:auto;top:auto;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;opacity:1;filter:none;text-align:center;clip-path:polygon(50% 50%,34.55% 97.55%,40% 98.99%,45% 99.75%,50% 100%,55% 99.75%,60% 98.99%,65.45% 97.55%);background:radial-gradient(ellipse at 50% 82%,rgba(230,164,106,.15),transparent 47%),linear-gradient(90deg,#242223,#1a1b1d);transform:rotate(var(--segment-angle));transform-origin:center;transition:none}
.industry-segment:nth-child(even){background:radial-gradient(ellipse at 50% 80%,rgba(243,216,126,.09),transparent 47%),linear-gradient(90deg,#16181a,#252222)}
.industry-segment.is-selected{opacity:1;filter:none;background:radial-gradient(ellipse at 50% 78%,rgba(230,164,106,.25),transparent 49%),linear-gradient(90deg,#292321,#211e1d)}
.industry-segment__content{position:absolute;left:50%;top:calc(50% + var(--content-radius));width:min(17vw,340px);max-width:90%;padding:.3rem;transform:translate(-50%,-50%) rotate(calc(0deg - var(--segment-angle) - var(--wheel-rotation)));transform-origin:center;will-change:transform}
.industry-card__icon{display:grid;place-items:center;width:clamp(54px,4.5vw,100px);height:clamp(54px,4.5vw,100px);margin:0 auto clamp(.7rem,1vw,1.4rem);border:1px solid rgba(243,216,126,.38);border-radius:24%;background:linear-gradient(145deg,rgba(107,66,39,.82),rgba(35,31,30,.94));color:#f3d87e;box-shadow:inset 0 1px 14px rgba(255,240,194,.14),0 0 28px rgba(230,164,106,.18)}
.industry-card__icon .icon{width:48%;height:48%;stroke-width:1.8}
.industry-segment h3{margin:0;font-size:clamp(1rem,1.22vw,1.85rem);font-weight:650;line-height:1.2;letter-spacing:-.03em;color:#fffaf3}
.industry-segment__content>i{display:block;width:clamp(20px,2vw,42px);height:2px;margin:.7rem auto;background:linear-gradient(90deg,#e6a46a,#f3d87e);box-shadow:0 0 12px rgba(243,216,126,.35)}
.industry-segment p{max-width:25ch;margin:0 auto;color:rgba(255,250,243,.67);font-size:clamp(.72rem,.8vw,1.02rem);line-height:1.45}
.industry-disc__hub{position:absolute;z-index:4;left:50%;top:50%;width:34%;aspect-ratio:1;translate:-50% -50%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 5% 5%;border:1px solid rgba(255,255,255,.06);border-radius:50%;background:radial-gradient(circle at 50% 72%,#1a1919,#0f1114 68%);box-shadow:0 0 75px rgba(0,0,0,.72),inset 0 -20px 70px rgba(230,164,106,.045);text-align:center}
.industry-disc__hub strong{margin:0 0 .35rem;font-size:clamp(2.2rem,4.2vw,6rem);font-weight:710;line-height:1;letter-spacing:-.065em;white-space:nowrap}
.industry-disc__hub span{font-size:clamp(.6rem,.65vw,.95rem);font-weight:650;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,250,243,.48)}
.industry-wheel__controls{position:absolute;z-index:5;left:0;right:0;bottom:clamp(24px,4svh,65px);display:flex;justify-content:space-between;align-items:center;padding:0 var(--reference-gutter,var(--gutter));pointer-events:none}
.industry-wheel__controls button{pointer-events:auto;min-width:110px;padding:1rem 0;border:0;background:none;color:#fffaf3;font-size:clamp(.9rem,1vw,1.25rem);font-weight:650;cursor:pointer;text-shadow:0 2px 14px #0f1114}
.industry-wheel__controls button:last-child{text-align:right}
.industry-wheel__controls button:hover,.industry-wheel__controls button:focus-visible{color:#f3d87e}
.industry-wheel__controls p{margin:0;color:rgba(255,250,243,.58);font-size:clamp(.65rem,.7vw,.9rem);font-weight:650;letter-spacing:.13em;text-align:center;text-transform:uppercase;text-shadow:0 2px 14px #0f1114}
@media(max-width:1199px){.industry-disc{top:5svh;width:150vw}.industry-segment__content{width:min(19vw,270px)}.industry-disc__hub strong{font-size:clamp(2rem,4vw,4rem)}}
@media(max-width:899px){.industry-disc{top:7svh;width:205vw}.industry-segment__content{width:22vw}.industry-segment p{display:none}.industry-card__icon{width:58px;height:58px}.industry-disc__hub strong{font-size:clamp(1.65rem,4vw,3rem)}.industry-wheel__controls p{display:none}}
@media(max-width:599px){.industry-disc{top:14svh;width:270vw;--content-radius:27%}.industry-segment__content{width:27vw}.industry-card__icon{width:48px;height:48px;margin-bottom:.5rem;border-radius:13px}.industry-segment h3{font-size:.72rem;line-height:1.12}.industry-segment__content>i{margin:.4rem auto}.industry-disc__hub{width:37%;padding-bottom:7%}.industry-disc__hub strong{font-size:1.55rem}.industry-disc__hub span{font-size:.47rem}.industry-wheel__controls{bottom:22px;padding-inline:20px}.industry-wheel__controls button{min-width:90px;font-size:.8rem}}
.has-static-scenes .industries{height:100svh;min-height:0}.has-static-scenes .industries__viewport{position:relative;height:100svh;min-height:0}.has-static-scenes .industry-disc{position:absolute;left:50%;top:5svh;width:135vw;translate:0 0;transform:translate(-50%,-50%)!important}
@media(prefers-reduced-motion:reduce){.industry-disc{transform:translate(-50%,-50%)!important}.industry-segment{transition:none!important}}
