.landing-shell{margin:16px;border-radius:28px;background:#f6faf7;overflow:clip}.landing-nav{position:fixed;top:36px;left:50%;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:38px;padding:8px 16px 8px 24px;background:rgba(255,255,255,.94);border:1px solid #eee;border-radius:18px;box-shadow:0 6px 25px #10102008;backdrop-filter:blur(16px);white-space:nowrap}.landing-brand{font-size:22px;font-weight:650;letter-spacing:-1px}.landing-brand__mark{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--coral);margin-left:2px}.landing-nav__links,.landing-nav__actions{display:flex;align-items:center;gap:25px;font-size:13px}.landing-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--coral);color:white;border-radius:9px;padding:14px 22px;font-size:13px;font-weight:550;transition:transform .25s,box-shadow .25s}.landing-button:hover{transform:translateY(-3px);box-shadow:0 9px 22px #0c503230}.landing-nav .landing-button{background:#1c2b23;padding:12px 17px}.landing-button--violet{background:var(--violet)}h1,h2{font-weight:550;letter-spacing:-.055em;line-height:1.07;font-size:clamp(36px,4.5vw,68px)}h3{font-size:20px;letter-spacing:-.04em;font-weight:550}.scene-copy{text-align:center;margin:auto;max-width:690px;position:relative;z-index:3}.scene-copy>p:not(.landing-eyebrow){color:var(--landing-muted);max-width:490px;margin:22px auto;font-size:15px;line-height:1.6}.landing-eyebrow{font-size:11px;color:var(--landing-muted);margin-bottom:14px}.hero{background:white;min-height:920px;height:105vh;padding:140px 25px 85px;display:flex;flex-direction:column;justify-content:center}.hero h1>span{display:block}.hero h1 .headline-letter{display:inline-block}.network{width:min(1050px,100%);height:315px;position:relative;margin:0 auto 12px}.network-hub{position:absolute;width:235px;left:50%;top:50%;transform:translate(-50%,-50%);animation:hub-float 5s ease-in-out infinite;z-index:3}.hub-symbols{position:absolute;inset:28% 30%;display:grid;place-items:center}.hub-symbols img{position:absolute;width:66px;filter:brightness(0) invert(1);animation:symbol-cycle 12s infinite both}.hub-symbols img:nth-child(2){animation-delay:-9s}.hub-symbols img:nth-child(3){animation-delay:-6s}.hub-symbols img:nth-child(4){animation-delay:-3s}.satellite{position:absolute;animation:satellite-float 6s ease-in-out infinite;border-radius:13px}.satellite--a{width:76px;height:94px;object-fit:cover;left:2%;top:45%;transform:rotate(-7deg);box-shadow:0 10px 30px #1111}.satellite--b{left:19%;top:10%;width:66px;height:66px;animation-delay:-2s}.satellite--c{width:150px;left:17%;top:47%;animation-delay:-4s}.satellite--d{width:160px;right:15%;top:5%;animation-delay:-1s}.satellite--e{right:1%;top:38%;width:80px;height:80px;animation-delay:-3s}.satellite--f{width:70px;height:88px;object-fit:cover;right:17%;top:63%;transform:rotate(6deg);animation-delay:-5s}.icon-tile{width:68px;height:68px;display:grid;place-items:center;background:white;border-radius:16px;box-shadow:0 10px 25px #11111109}.icon-tile img{width:31px;height:31px}.yellow{background:#e0eac8}.violet img{filter:invert(42%) sepia(69%) saturate(1300%) hue-rotate(230deg)}.coral img{filter:invert(52%) sepia(86%) saturate(1700%) hue-rotate(326deg)}.wire{position:absolute;height:1px;background:linear-gradient(90deg,transparent,#dce8df,#aec6b4);width:41%;top:50%;left:9%;transform-origin:right}.wire:after{content:'';position:absolute;width:5px;height:5px;background:#42765a;border-radius:50%;top:-2px;animation:wire-travel 3s linear infinite}.wire--right{left:50%;transform:none;transform-origin:left}.wire--upper{left:18%;width:32%;transform:rotate(22deg)}.wire--lower{left:50%;width:32%;transform:rotate(-22deg);transform-origin:left}.bento-section{max-width:1680px;margin:auto;padding:70px 16px 115px}.bento-section>h2{text-align:center;margin-bottom:50px}.bento-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.bento-card{background:white;border-radius:20px;overflow:hidden;padding:0 28px 28px}.bento-card h3{margin-bottom:12px}.bento-card p{color:var(--landing-muted);font-size:13px;line-height:1.65}.bento-card--wide{grid-column:span 2}.illustration{height:220px;position:relative;overflow:hidden;display:grid;place-items:center;margin:0 -28px 20px}.chart-paper{width:185px;padding:22px;background:white;border:1px solid #eee;border-radius:13px;box-shadow:0 12px 35px #20203012;rotate:-3deg;z-index:2;animation:paper-float 5s ease-in-out infinite}.mock-line{width:55%;height:6px;background:#ddd;border-radius:3px;margin-bottom:25px}.bars{height:75px;display:flex;align-items:end;gap:8px}.bars i{width:18px;height:var(--height,70%);background:#2d7250;border-radius:4px 4px 0 0;transform-origin:bottom;animation:bar-grow 4s ease-in-out infinite alternate}.bars i:nth-child(even){background:#b6cfbe;animation-delay:-2s}.bars i:nth-child(3n){--height:45%;animation-delay:-1s}.ghost-card{position:absolute;width:190px;height:135px;border-radius:14px;background:#f5f5f7;transform:translate(25px,-13px) rotate(8deg);filter:blur(2px);animation:ghost-slide 6s infinite}.notifications{align-content:center;gap:9px}.notification{display:flex;align-items:center;width:220px;gap:12px;padding:12px;background:white;border:1px solid #eee;border-radius:10px;box-shadow:0 8px 16px #11111106;z-index:2;animation:notification-cycle 6s infinite}.notification:nth-of-type(3){animation-delay:-2s}.notification:nth-of-type(4){animation-delay:-4s}.notification img{width:24px;filter:invert(40%) sepia(80%) saturate(500%) hue-rotate(230deg)}.notification b,.notification i{display:block;background:#dae1dc;height:5px;width:90px;border-radius:3px;margin:5px}.notification i{width:60px;background:#ebebee}.notification span{width:6px;height:6px;border-radius:50%;background:#c6eddf;margin-left:auto}.rings{position:absolute;width:180px;height:180px;border:1px solid #eee;border-radius:50%;box-shadow:0 0 0 25px #fbfefc,0 0 0 26px #eee,0 0 0 55px #fbfefc,0 0 0 56px #eee;animation:rings-pulse 4s infinite}.documents>img{position:absolute;width:140px;z-index:3;animation:seal-sway 5s ease-in-out infinite}.paper{position:absolute;width:105px;height:125px;background:white;border:1px solid #eee;border-radius:8px;box-shadow:0 8px 30px #1111;padding:30px 14px;animation:paper-float 5s infinite}.paper i{display:block;height:5px;background:#e6e7eb;margin:10px 0;border-radius:2px}.paper--one{left:15%;rotate:-12deg}.paper--two{right:15%;rotate:12deg;animation-delay:-2s}.app-slider{height:230px;align-items:center;background:linear-gradient(180deg,#fbfefc,#f1f6f2)}.app-strip{--app-step:450px;display:flex;gap:20px;width:max-content;position:absolute;left:20px;animation:app-slide 12s ease-in-out infinite}.app-strip img{width:430px;flex:0 0 430px;border-radius:12px;box-shadow:0 15px 30px #1111}.progress-paper{position:absolute;right:30px;bottom:16px;background:white;border-radius:12px;padding:17px;width:145px;box-shadow:0 10px 30px #18102516;animation:paper-float 6s infinite}.progress-paper img{width:30px;margin-bottom:12px}.progress-paper i{display:block;height:5px;background:#689575;border-radius:3px;margin:9px 0;transform-origin:left;animation:bar-grow 4s infinite alternate}.team-wheel{position:absolute;width:160px;height:160px;animation:wheel-spin 24s linear infinite}.team-wheel>div{position:absolute;inset:0;transform:rotate(calc(var(--i)*60deg)) translateY(-50px)}.team-wheel img{width:45px;height:55px;object-fit:cover;border:4px solid white;border-radius:9px;margin:auto;animation:counter-spin 24s linear infinite;rotate:calc(var(--i)*-60deg)}.team-orbit>.icon-tile{z-index:2}.arc-section{background:white;max-width:1090px;margin:0 auto 100px;border-radius:25px;padding:60px 25px 35px;overflow:hidden;min-height:600px}.arc-section .icon-tile{margin:0 auto 25px;box-shadow:none;background:#edf4ee}.feature-arc{position:relative;height:190px;margin-top:45px}.arc-tile{position:absolute;top:20px;left:50%;width:100px;height:100px;border-radius:20px;background:#f6faf7;display:grid;place-items:center;will-change:transform}.arc-tile img{width:46px;filter:invert(47%) sepia(59%) saturate(1300%) hue-rotate(230deg)}.arc-tile:nth-child(even) img{filter:invert(55%) sepia(90%) saturate(1300%) hue-rotate(327deg)}.arc-tile span{position:absolute;top:110%;font-size:11px;width:150px;text-align:center;opacity:0}.arc-label{text-align:center;font-size:15px;transition:filter .3s,opacity .3s}.deck-section{height:170vh;min-height:1250px;position:relative}.deck-sticky{position:sticky;top:100px;height:760px;padding:35px 24px}.deck-sticky h2{max-width:680px;margin:auto}.role-deck{height:430px;position:relative;margin-top:45px;perspective:1200px}.role-card{position:absolute;left:50%;top:20px;width:390px;height:350px;border-radius:20px;background:white;padding:30px;box-shadow:0 20px 60px #21222d0a;will-change:transform;overflow:hidden}.role-card .icon-tile{width:42px;height:42px;box-shadow:none;background:#eaf1ec;margin-bottom:16px}.role-card .icon-tile img{width:23px}.role-card p{font-size:13px;color:var(--landing-muted);margin:12px 0 20px}.role-capture{border-radius:9px;width:100%}.envelope{position:absolute;left:50%;top:140px;width:430px;height:280px;transform:translateX(-50%);z-index:10;pointer-events:none;perspective:800px}.envelope-back{position:absolute;inset:0;background:#4d8161;border-radius:16px}.envelope-flap{position:absolute;inset:0;clip-path:polygon(0 0,100% 0,50% 65%);background:#81a78c;transform-origin:top;transform:rotateX(calc(var(--open,0)*180deg));z-index:12}.envelope-front{position:absolute;inset:0;background:linear-gradient(135deg,#99b8a0,#3e7857);clip-path:polygon(0 0,50% 53%,100% 0,100% 100%,0 100%);border-radius:16px;z-index:12}.deck-controls,.capture-controls{display:flex;justify-content:center;gap:12px;position:relative;z-index:20}.deck-controls button,.capture-controls button{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid #e0e2e7;background:white;transition:transform .2s}.deck-controls button:hover,.capture-controls button:hover{transform:scale(1.1)}button img{width:20px}.captures-section{padding:70px 0 95px;overflow:hidden}.capture-heading{max-width:1090px;margin:0 auto 35px;padding:0 25px;display:flex;gap:30px;align-items:center;justify-content:space-between}.capture-heading h2{font-size:42px}.capture-heading p{color:var(--landing-muted);margin-top:16px;font-size:14px}.capture-rail{display:flex;gap:24px;overflow-x:auto;padding:20px max(25px,calc((100vw - 1090px)/2)) 35px;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#abc5b2 transparent}.capture-rail .landing-figure{flex:0 0 min(740px,80vw);scroll-snap-align:center;border-radius:18px;background:white;padding:18px;box-shadow:0 15px 30px #10102505}.capture-rail .landing-figure img{width:100%;height:350px;object-fit:contain;border-radius:10px}.capture-rail figcaption{font-size:14px;padding:17px 5px 0}.landing-cta{padding:70px 25px 100px;text-align:center;max-width:750px;margin:auto}.landing-cta p{color:var(--landing-muted);font-size:15px;margin:25px 0}.landing-footer{background:white;border-radius:24px;margin:0 25px;padding:45px 55px 20px;overflow:hidden}.footer-top{display:flex;justify-content:space-between;align-items:center}.footer-top nav{display:flex;gap:30px;font-size:13px}.footer-wordmark{display:flex;justify-content:center;font-weight:600;font-size:clamp(90px,19vw,300px);letter-spacing:-.075em;line-height:1.3;color:var(--coral);margin:20px -20px;white-space:nowrap}.footer-glyph{position:relative;display:inline-block;will-change:filter,transform}.footer-glyph>span{display:block;clip-path:inset(0 0 50% 0)}.footer-glyph>span+span{position:absolute;inset:0;clip-path:inset(50% 0 0 0)}.footer-legal{font-size:11px;color:var(--landing-muted);border-top:1px solid #eee;padding-top:15px}.outro{background:white;margin-top:60px;padding:50px 20px 85px}.outro .scene-copy h2{font-size:48px;margin-bottom:30px}.headline-letter{display:inline-block;transition:filter .7s,transform .7s,opacity .7s;transition-delay:calc(var(--letter)*18ms)}.headline-pending .headline-letter{opacity:0;filter:blur(10px);transform:translateY(15px)}.bento-card{transition:opacity .7s,transform .7s,filter .7s;transition-delay:calc(var(--card)*90ms)}.bento-pending .bento-card{opacity:0;transform:translateY(55px);filter:blur(8px)}.paused *, .paused *:before,.paused *:after{animation-play-state:paused!important}
@keyframes hub-float{0%,100%{transform:translate(-50%,-50%) rotate(-3deg) translateY(0)}50%{transform:translate(-50%,-50%) rotate(4deg) translateY(-12px)}}@keyframes symbol-cycle{0%,23%{opacity:1;transform:rotateY(0) scale(1);filter:brightness(0) invert(1) blur(0)}25%,97%{opacity:0;transform:rotateY(80deg) scale(.7);filter:brightness(0) invert(1) blur(6px)}100%{opacity:1;transform:rotateY(0) scale(1)}}@keyframes satellite-float{0%,100%{translate:0 0}50%{translate:0 -14px}}@keyframes wire-travel{0%{left:0;opacity:0}15%,85%{opacity:1}100%{left:100%;opacity:0}}@keyframes paper-float{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes bar-grow{0%{transform:scaleY(.4)}100%{transform:scaleY(1)}}@keyframes ghost-slide{0%,100%{translate:0 0;rotate:8deg}50%{translate:-35px 12px;rotate:-8deg}}@keyframes notification-cycle{0%,100%{transform:translateY(0);opacity:1}40%{transform:translateY(-9px);opacity:.55}70%{transform:translateY(6px);opacity:1}}@keyframes rings-pulse{0%,100%{transform:scale(.9);opacity:.6}50%{transform:scale(1.15);opacity:1}}@keyframes seal-sway{0%,100%{transform:rotate(-8deg) translateY(5px)}50%{transform:rotate(9deg) translateY(-8px)}}@keyframes app-slide{0%,15%,100%{transform:translateX(0)}50%,75%{transform:translateX(calc(-1 * var(--app-step)))}}@keyframes wheel-spin{to{transform:rotate(360deg)}}@keyframes counter-spin{to{transform:rotate(-360deg)}}
@media(max-width:1050px){.portrait{width:105px;height:140px}.portrait--2,.portrait--4{left:15%}.portrait--6,.portrait--8{right:15%}.people-scene .scene-copy{max-width:430px}.landing-nav{gap:22px}.bento-card{padding:0 20px 24px}.illustration{margin-left:-20px;margin-right:-20px}.arc-section{margin-left:25px;margin-right:25px}}
@media(max-width:700px){.landing-shell{margin:6px;border-radius:20px}.landing-nav{top:18px;padding:7px 12px;gap:14px;width:calc(100% - 36px);justify-content:space-between}.landing-brand{font-size:20px}.landing-nav__links,.landing-login{display:none}.landing-nav .landing-button{font-size:11px;padding:11px}.hero{height:850px;min-height:0;padding:100px 20px 70px}.network{height:270px;width:100%;margin-bottom:20px}.network-hub{width:190px}.hub-symbols img{width:48px}.satellite--a{width:45px;height:60px;left:0;top:25%}.satellite--b{left:10%;top:3%;width:43px;height:43px}.satellite--b img,.satellite--e img{width:24px}.satellite--c{width:100px;left:0;top:63%}.satellite--d{width:110px;right:0;top:6%}.satellite--e{width:45px;height:45px;right:0;top:49%}.satellite--f{width:43px;height:57px;right:9%;top:74%}.hero h1{font-size:43px}.scene-copy>p:not(.landing-eyebrow){font-size:14px}.people-scene{height:900px;min-height:0;padding:170px 28px}.people-scene .scene-copy{max-width:310px}.people-scene h2{font-size:42px}.portrait{width:70px;height:95px;border-width:4px}.portrait--1{left:4%;top:4%}.portrait--2{left:36%;top:8%}.portrait--3{left:1%;top:74%}.portrait--4{left:31%;top:86%}.portrait--5{right:4%;top:5%}.portrait--6{right:1%;top:22%}.portrait--7{right:2%;top:77%}.portrait--8{right:31%;top:70%}.bento-section{padding:50px 16px 75px}.bento-section>h2{font-size:39px;margin-bottom:30px}.bento-grid{grid-template-columns:1fr}.bento-card--wide{grid-column:auto}.illustration{height:220px}.arc-section{margin:0 16px 60px;padding:45px 20px 25px;min-height:590px}.arc-section h2{font-size:39px}.arc-tile{width:65px;height:65px;border-radius:13px}.arc-tile img{width:30px}.feature-arc{height:155px}.arc-label{font-size:13px}.deck-section{height:1400px;min-height:0}.deck-sticky{top:90px;height:690px;padding:30px 15px}.deck-sticky h2{font-size:39px}.role-card{width:280px;height:330px;padding:23px}.envelope{width:310px;height:230px;top:135px}.role-deck{margin-top:40px;height:410px}.capture-heading{padding:0 22px;align-items:flex-start}.capture-heading h2{font-size:33px}.capture-controls{gap:5px}.capture-controls button{width:36px;height:36px}.capture-rail .landing-figure{flex-basis:85vw;padding:12px}.capture-rail .landing-figure img{height:290px}.landing-cta{padding:35px 25px 65px}.landing-cta h2{font-size:39px}.landing-footer{margin:0 14px;padding:30px 22px 18px}.footer-top{align-items:flex-start;gap:25px}.footer-top nav{flex-direction:column;gap:10px;font-size:12px}.footer-wordmark{font-size:20vw;margin:35px -8px}.outro{margin-top:35px;padding:35px 15px 65px}.outro .scene-copy h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){.headline-pending .headline-letter,.bento-pending .bento-card{opacity:1;filter:none;transform:none}.deck-section{height:850px}.deck-sticky{position:relative;top:0}.envelope{display:none}.footer-glyph{transform:none!important;filter:none!important}}

.headline-word{display:inline-block;white-space:nowrap}.hero h1 .headline-word{display:inline-block}
.network .satellite{animation:satellite-float 6s ease-in-out infinite,network-arrive 1s cubic-bezier(.2,.8,.2,1) both;animation-delay:0s,var(--arrival,.3s)}.satellite--a{--arrival:.3s}.satellite--b{--arrival:.5s}.satellite--c{--arrival:.7s}.satellite--d{--arrival:.45s}.satellite--e{--arrival:.65s}.satellite--f{--arrival:.85s}@keyframes network-arrive{from{opacity:0;scale:.6;filter:var(--satellite-color-filter, blur(0)) blur(9px)}to{opacity:1;scale:1;filter:var(--satellite-color-filter, blur(0)) blur(0)}}
@media(max-width:700px){.portrait--8{top:84%;right:32%}.portrait--4{top:89%;left:30%}}

/* Team scene: staggered, upright portrait columns framing a compact centre. */
.people-scene{height:105vh;min-height:850px;position:relative;display:grid;place-items:center;padding:110px 24px 70px;background:#f1f6f2;overflow:hidden}
.people-scene .scene-copy{max-width:470px;transform:translateY(20px)}
.people-scene .icon-tile{width:96px;height:96px;margin:0 auto 44px;border-radius:22px;box-shadow:0 12px 20px #20203005}
.people-scene .icon-tile img{width:45px;height:45px}
.people-scene h2{font-size:clamp(50px,5.1vw,78px);font-weight:500;line-height:1.06;white-space:pre-line;letter-spacing:-.055em}
.people-scene .scene-copy>p{max-width:395px;margin:25px auto 32px;font-size:15px;line-height:1.55}
.people-scene .landing-button{min-width:250px;padding:15px 22px;background:linear-gradient(180deg,#4b865f,#0c5032);border:1px solid #739e7f;box-shadow:inset 0 2px 3px #ffffff30}
.people-portraits{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.portrait{position:absolute;width:12.3%;height:auto;aspect-ratio: .79;object-fit:cover;border:3px solid white;border-radius:21px;box-shadow:0 22px 35px #19243210;will-change:transform;rotate:0deg}
.portrait--1{left:7.3%;top:14%}.portrait--2{left:15.8%;top:34%}.portrait--3{left:10%;top:57%}.portrait--4{left:-5%;top:66%}
.portrait--5{right:7.3%;top:14%}.portrait--6{right:15.8%;top:34%}.portrait--7{right:10%;top:57%}.portrait--8{right:-5%;top:66%}
@media(max-width:1050px) and (min-width:701px){.people-scene .scene-copy{max-width:380px}.people-scene h2{font-size:58px}.people-scene .scene-copy>p{max-width:310px}.portrait{width:14%;border-radius:16px}.portrait--2{left:12%}.portrait--6{right:12%}}
@media(max-width:700px){.people-scene{height:880px;min-height:0;padding:180px 25px 150px}.people-scene .scene-copy{max-width:310px;transform:none}.people-scene .icon-tile{width:66px;height:66px;margin-bottom:28px;border-radius:17px}.people-scene .icon-tile img{width:33px;height:33px}.people-scene h2{font-size:48px}.people-scene .scene-copy>p{max-width:290px;font-size:14px;margin:22px auto 27px}.people-scene .landing-button{min-width:210px}.portrait{width:85px;border-radius:13px}.portrait--1{left:-20px;top:6%}.portrait--2{left:calc(50% - 42px);top:3%}.portrait--3{left:12%;top:83%}.portrait--4{left:-35px;top:71%}.portrait--5{right:-20px;top:6%}.portrait--6{right:-42px;top:24%}.portrait--7{right:12%;top:83%}.portrait--8{right:-35px;top:71%}}

/* Two stepped portrait carousels; positions are animated together on each beat. */
.people-portraits .portrait{left:0;right:auto;top:0;rotate:0deg}


/* Restored bottom layout from the earlier static mockup: a horizontal CTA and compact footer. */
.landing-cta{max-width:none;margin:0;padding:48px max(35px,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:40px;text-align:left;background:#eaf1ec}
.landing-cta>div{max-width:760px}.landing-cta h2{font-size:32px;letter-spacing:-.045em;line-height:1.2}.landing-cta p{margin:12px 0 0;max-width:630px;font-size:15px;color:#68766d}.landing-cta .landing-button{flex-shrink:0;background:#1c2b23;min-width:220px}
.landing-footer{margin:0;border-radius:0;padding:32px max(35px,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:35px;background:#fbfefc}
.landing-footer>nav{display:flex;gap:28px;font-size:12px;color:#5a675f}.landing-footer .landing-brand{color:#1c2b23}.landing-footer .landing-brand__mark{background:#0c5032;border-radius:0}
.landing-footer .footer-legal{display:flex;gap:20px;align-items:center;padding:0;border:0;font-size:10px;color:#5a675f}
@media(max-width:800px){.landing-cta{padding:35px 25px;flex-direction:column;align-items:flex-start;gap:25px}.landing-cta h2{font-size:29px}.landing-footer{padding:28px 25px;flex-wrap:wrap;gap:24px}.landing-footer .footer-legal{width:100%;justify-content:space-between}.landing-footer>nav{gap:16px}}

/* Large closing CTA shares the page typography, reveal and coral action. */
.landing-cta{margin:30px 25px 65px;min-height:440px;padding:85px 35px;background:white;border-radius:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;text-align:center}
.landing-cta>div{max-width:820px}.landing-cta h2{font-size:clamp(42px,4.5vw,68px);font-weight:550;line-height:1.07;letter-spacing:-.055em}.landing-cta p{max-width:570px;margin:25px auto 0;color:var(--landing-muted);font-size:16px;line-height:1.6}.landing-cta .landing-button{background:var(--coral);min-width:220px;padding:16px 24px}
[data-headline] .headline-letter{transition:none;will-change:opacity,transform,filter}
@media(max-width:700px){.landing-cta{margin:20px 15px 40px;min-height:420px;padding:60px 25px;gap:28px;align-items:center}.landing-cta h2{font-size:40px}.landing-cta p{font-size:14px}}

/* Intact typography, restrained rise and fade, replayed on viewport entry. */
[data-headline].headline-animated{opacity:0;transform:translate3d(0,18px,0);transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}
[data-headline].headline-animated.is-visible{opacity:1;transform:translate3d(0,0,0)}
@media(prefers-reduced-motion:reduce){[data-headline].headline-animated{opacity:1;transform:none;transition:none;will-change:auto}}

/* Align the feature arc panel with the bento cards above it. */
.arc-section{max-width:1648px;width:calc(100% - 32px);margin-left:auto;margin-right:auto}

/* Give the role illustrations a little more vertical room. */
.bento-grid .illustration{height:320px}
@media(max-width:700px){.bento-grid .illustration{height:295px}}

@media(max-width:700px){.app-strip{--app-step:370px}.app-strip img{width:350px;flex-basis:350px}}

/* Product stage: large readable capture, quiet side previews and explicit navigation. */
.deck-section{padding:85px 0 95px}.deck-sticky>.scene-copy{padding:0 24px;max-width:800px}.deck-sticky h2{max-width:780px}
.role-deck{height:580px;max-width:none;margin:48px auto 28px;touch-action:pan-y}
.role-card{width:min(1040px,calc(100vw - 180px));height:555px;padding:25px;top:0;border:1px solid #dae1dc;border-radius:22px;box-shadow:0 20px 45px #25243209;cursor:grab;overflow:hidden}
.role-card img{height:460px;width:100%;object-fit:contain;background:#f8faf9;border-radius:12px;user-select:none;-webkit-user-drag:none}
.role-card figcaption{padding:22px 3px 0;font-size:16px;line-height:1.4;letter-spacing:-.025em}
.deck-toolbar{max-width:1040px;margin:auto;padding:0 8px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.deck-pagination{display:flex;gap:7px;align-items:center}.deck-pagination button{width:23px;height:30px;border:0;background:transparent;padding:0;position:relative}.deck-pagination button:after{content:'';height:4px;width:100%;position:absolute;left:0;top:13px;background:#dae1dc;border-radius:3px;transition:background .3s,height .3s}.deck-pagination button[aria-current=true]:after{background:var(--violet);height:5px}.deck-pagination button:hover:after{background:#6e9279}.deck-count{font-size:12px;color:var(--landing-muted);font-variant-numeric:tabular-nums;align-self:center;margin-right:15px}.deck-controls{align-items:center}
@media(max-width:1100px){.deck-toolbar{padding:0 40px}.role-card{width:calc(100vw - 140px)}}
@media(max-width:700px){.deck-section{padding:55px 0 65px}.deck-sticky>.scene-copy{padding:0 25px}.role-deck{height:410px;margin:32px auto 20px}.role-card{width:calc(100vw - 62px);height:390px;padding:15px;border-radius:17px}.role-card img{height:315px}.role-card figcaption{padding:17px 2px 0;font-size:12px}.deck-toolbar{padding:0 27px;flex-wrap:wrap;justify-content:center;gap:12px}.deck-pagination{gap:5px}.deck-pagination button{width:16px}.deck-count{margin-right:8px}.deck-controls button{width:42px;height:42px}}

.landing-nav{gap:26px;max-width:calc(100% - 36px)}.landing-nav__links{gap:20px;font-size:12px}.landing-nav__actions{gap:18px}
@media(max-width:1050px){.landing-nav{gap:18px}.landing-nav__links{gap:14px;font-size:11px}.landing-login{display:none}}
@media(max-width:700px){.landing-nav{flex-wrap:wrap;gap:9px;padding:7px 12px}.landing-nav__links{display:flex;order:3;width:100%;overflow-x:auto;scrollbar-width:none;padding:5px 0 2px;gap:19px;font-size:11px}.landing-nav__links a{flex-shrink:0}.landing-nav__links::-webkit-scrollbar{display:none}html{scroll-padding-top:130px}}

/* Every section link remains visible; compact screens use two navigation rows. */
.landing-footer>nav{flex-wrap:wrap;justify-content:center;gap:12px 20px}
@media(max-width:1050px){.landing-nav{width:900px;flex-wrap:wrap;justify-content:space-between;gap:8px 18px}.landing-nav__links{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:9px 20px;padding-top:5px}.landing-footer{flex-wrap:wrap}.landing-footer>nav{order:3;width:100%;justify-content:flex-start}}
@media(max-width:700px){.landing-nav{width:calc(100% - 36px)}.landing-nav__links{overflow:visible;padding:6px 0 3px;gap:8px 16px;font-size:11px;justify-content:flex-start;flex-wrap:wrap}.landing-nav__links a{flex-shrink:0}.landing-footer>nav{font-size:11px;gap:10px 18px}html{scroll-padding-top:155px}}

/* Available features: a guided, animated product preview. */
.features-section{max-width:none;margin:0 auto;padding:35px 16px 110px}.features-section>.scene-copy{max-width:760px;margin-bottom:55px}.features-showcase{max-width:1648px;margin-inline:auto;display:grid;grid-template-columns:390px minmax(0,1fr);gap:55px;align-items:center;padding:0 40px}.feature-tabs{display:flex;flex-direction:column;gap:12px}.feature-tab{display:flex;align-items:flex-start;gap:16px;position:relative;overflow:hidden;background:transparent;border:1px solid transparent;border-radius:16px;padding:21px;text-align:left;color:var(--landing-ink);transition:background .35s,border-color .35s,box-shadow .35s}.feature-tab[aria-selected=true]{background:white;border-color:#e7e5ec;box-shadow:0 10px 25px #20202504}.feature-tab-icon{flex:0 0 44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#e8e7ee}.feature-tab-icon img{width:23px}.feature-tab[aria-selected=true] .feature-tab-icon{background:#e5efe8}.feature-tab[aria-selected=true] .feature-tab-icon img{filter:invert(42%) sepia(69%) saturate(1300%) hue-rotate(230deg)}.feature-tab strong{display:block;font-size:17px;font-weight:550;letter-spacing:-.035em;margin:1px 0 8px}.feature-description{display:block;font-size:12px;color:var(--landing-muted);line-height:1.6}.feature-tab-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--violet);transform:scaleX(0);transform-origin:left}.feature-tab[aria-selected=true] .feature-tab-progress{transform:scaleX(var(--feature-progress,0))}.feature-stage{position:relative;height:590px;min-width:0;isolation:isolate;background:radial-gradient(ellipse at center,#dbe8df 0,transparent 70%)}.feature-panel{position:absolute;inset:20px 0;display:flex;flex-direction:column;border:1px solid #e5e5eb;border-radius:20px;overflow:hidden;background:#fbfefc;box-shadow:0 25px 60px #2d203415;opacity:0;transform:translate3d(25px,16px,0) scale(.98);pointer-events:none;transition:opacity .6s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.feature-panel.is-active{opacity:1;transform:translate3d(0,0,0) scale(1);pointer-events:auto;z-index:2}.feature-window-bar{display:flex;align-items:center;gap:5px;padding:17px 20px;border-bottom:1px solid #edf3ee;background:#fbfefc}.feature-window-bar i{width:6px;height:6px;background:#dedee6;border-radius:50%}.feature-window-bar span{margin-left:auto;font-size:10px;color:#849189}.feature-screenshot{height:430px;width:100%;object-fit:contain;padding:20px;background:#fafcfb;min-height:0;flex:1}.feature-panel figcaption{display:flex;align-items:center;gap:10px;padding:16px 20px;font-size:13px;font-weight:500;border-top:1px solid #edf3ee}.feature-panel figcaption img{width:20px}.feature-tab:hover{background:#ffffff80}
@media(max-width:1200px){.features-showcase{grid-template-columns:330px minmax(0,1fr);gap:25px;padding:0 20px}.feature-stage{height:560px}}
@media(max-width:850px){.features-showcase{grid-template-columns:1fr;padding:0 8px;gap:20px}.feature-tabs{display:grid;grid-template-columns:repeat(2,1fr)}.feature-tab{padding:16px}.feature-stage{height:500px}.features-section>.scene-copy{margin-bottom:35px}}
@media(max-width:500px){.features-section{padding:35px 16px 65px}.features-section h2{font-size:39px}.feature-tabs{gap:8px}.feature-tab{padding:13px 11px;gap:9px;min-height:95px;align-items:center}.feature-tab-icon{flex-basis:32px;height:32px;border-radius:9px}.feature-tab-icon img{width:19px}.feature-tab strong{font-size:12px;line-height:1.35;margin:0}.feature-description{display:none}.feature-stage{height:410px}.feature-panel{inset:0}.feature-screenshot{padding:12px}.feature-panel figcaption{font-size:12px}}

/* A text-only catalogue with generous reading space and a persistent close action. */
.features-catalog-action{display:flex;justify-content:center;margin-top:62px}
.landing-button--catalog{background:white;color:var(--landing-ink);border:1px solid var(--landing-border);padding:16px 23px;box-shadow:0 5px 15px #29203504}
.landing-button--catalog:hover{background:var(--landing-accent);border-color:var(--landing-accent)}
.features-catalog {
  --catalog-muted: var(--landing-muted);
  --catalog-border: var(--landing-border);
  width: min(1120px, calc(100vw - 64px));
  height: min(840px, calc(100dvh - 64px));
  max-width: none;
  max-height: none;
  margin: auto;
  padding: 0;
  overflow: hidden;
  border: 1px solid #ffffffb3;
  border-radius: 12px;
  background: white;
  color: var(--landing-ink);
  box-shadow: 0 32px 100px #17202d2e;
}
.features-catalog[open] { display: flex; flex-direction: column; animation: catalog-enter .3s cubic-bezier(.22,1,.36,1); }
.features-catalog::backdrop { background: #20252e66; backdrop-filter: blur(8px); }
.catalog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; padding: 34px 40px 27px; flex-shrink: 0; }
.catalog-heading { max-width: 760px; }
.catalog-header h2 { font-size: clamp(30px,3vw,42px); font-weight: 550; line-height: 1.1; letter-spacing: -.055em; text-wrap: balance; }
.catalog-header #catalog-intro { max-width: 620px; margin-top: 13px; font-size: 14px; line-height: 1.65; color: var(--catalog-muted); }
.catalog-close { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; margin: 0; padding: 0; border: 1px solid var(--catalog-border); border-radius: 50%; background: #f6faf7; color: #5a675f; transition: background .2s, color .2s; }
.catalog-close span { font-size: 28px; font-weight: 300; line-height: 1; margin-top: -2px; }
.catalog-close:hover { background: #eaf1ec; color: var(--landing-ink); }
.catalog-navigation { padding: 0 40px; flex-shrink: 0; border-bottom: 1px solid var(--catalog-border); }
.catalog-tabs { position: relative; isolation: isolate; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 5px; padding: 0; border: 0; background: transparent; }
.catalog-tab { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 10px; min-width: 0; min-height: 51px; padding: 12px 10px; border: 0; border-radius: 0; background: transparent; color: #5a675f; font-size: 13px; font-weight: 500; letter-spacing: -.025em; transition: color .25s; }
.catalog-tab img { width: 19px; height: 19px; opacity: .5; transition: filter .25s, opacity .25s; }
.catalog-tab[aria-selected=true] { color: var(--landing-ink); }
.catalog-tab[aria-selected=true] img { filter: var(--landing-icon-filter); opacity: 1; }
.catalog-tab:hover:not([aria-selected=true]) { color: #34463b; }
.catalog-tab-count { display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 4px; border-radius: 7px; color: #7b8980; background: #e6ece8; font-size: 10px; font-variant-numeric: tabular-nums; transition: color .25s, background .25s; }
.catalog-tab[aria-selected=true] .catalog-tab-count { color: var(--landing-accent); background: var(--landing-tint); }
.catalog-tab-indicator { position: absolute; top: 0; left: 0; width: var(--catalog-tab-width,0px); height: var(--catalog-tab-height,0px); border: 0; background: transparent; transform: translate3d(var(--catalog-tab-x,5px),var(--catalog-tab-y,5px),0); transition: transform .35s cubic-bezier(.22,1,.36,1), width .35s cubic-bezier(.22,1,.36,1), height .35s cubic-bezier(.22,1,.36,1); pointer-events: none; }
.catalog-tab-indicator::after { content: ''; position: absolute; width: 50%; height: 2px; left: 25%; bottom: 0; border-radius: 2px; background: var(--landing-accent); }
.catalog-content { min-height: 0; flex: 1; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #dae1dc transparent; padding: 28px 40px 36px; background: var(--landing-background); }
.catalog-group[hidden] { display: none; }
.catalog-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.catalog-feature { display: grid; grid-template-columns: 34px minmax(0,1fr); align-content: start; align-items: center; gap: 14px 12px; padding: 23px 25px; border: 1px solid var(--landing-border); border-radius: 6px; background: white; }
.catalog-feature-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--landing-tint); }
.catalog-feature-icon img { width: 19px; height: 19px; filter: var(--landing-icon-filter); }
.catalog-feature:nth-child(even) .catalog-feature-icon { background: var(--landing-tint); }
.catalog-feature:nth-child(even) .catalog-feature-icon img { filter: var(--landing-icon-filter); }
.catalog-feature h4 { margin: 0; font-size: 16px; font-weight: 550; letter-spacing: -.035em; line-height: 1.35; }
.catalog-feature p { grid-column: 1 / -1; margin: 0; max-width: 49ch; font-size: 14px; line-height: 1.65; color: var(--catalog-muted); }
.catalog-feature.catalog-tile-animated { opacity: 0; transform: translate3d(0,14px,0); transition: opacity .45s cubic-bezier(.22,1,.36,1), transform .55s cubic-bezier(.22,1,.36,1); transition-delay: var(--catalog-delay,0ms); }
.catalog-feature.catalog-tile-animated.is-visible { opacity: 1; transform: translate3d(0,0,0); }
.catalog-group:focus-visible { outline: 2px solid var(--landing-accent); outline-offset: 6px; border-radius: 12px; }
.catalog-tab:focus-visible { outline: 2px solid var(--landing-accent); outline-offset: 2px; }
.catalog-close:focus-visible, .landing-button--catalog:focus-visible { outline: 2px solid var(--landing-accent); outline-offset: 4px; }
@keyframes catalog-enter { from { opacity: 0; transform: translateY(16px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media(max-width:850px) {
  .features-catalog { width: calc(100vw - 32px); }
  .catalog-header { padding: 27px 28px 24px; }
  .catalog-navigation { padding: 0 28px; }
  .catalog-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-content { padding: 26px 28px 30px; }
}
@media(max-width:600px) {
  .features-catalog { width: calc(100vw - 24px); height: calc(100dvh - 24px); border-radius: 10px; }
  .catalog-header { padding: 22px 20px 20px; gap: 12px; }
  .catalog-header h2 { font-size: 29px; max-width: 260px; }
  .catalog-header #catalog-intro { font-size: 12px; line-height: 1.6; margin-top: 11px; }
  .catalog-close { flex-basis: 34px; width: 34px; height: 34px; }
  .catalog-close span { font-size: 25px; }
  .catalog-navigation { padding: 0 20px; }
  .catalog-tabs { gap: 4px; }
  .catalog-tab { gap: 7px; min-height: 44px; padding: 9px 6px; font-size: 11px; }
  .catalog-tab img { width: 16px; height: 16px; }
  .catalog-tab-count { min-width: 19px; height: 19px; font-size: 9px; }
  .catalog-content { padding: 23px 20px 26px; }
  .catalog-grid { grid-template-columns: 1fr; gap: 12px; }
  .catalog-feature { padding: 20px; border-radius: 6px; }
  .catalog-feature h4 { font-size: 15px; }
  .catalog-feature p { font-size: 13px; }
  .catalog-feature.catalog-tile-animated { transition-delay: 0ms; }
  .features-catalog-action { margin-top: 50px; }
  .landing-button--catalog { font-size: 12px; padding: 15px 18px; }
}
@media(max-height:650px) and (orientation:landscape) {
  .features-catalog { height: calc(100dvh - 24px); }
  .catalog-header { padding-top: 16px; padding-bottom: 16px; }
  .catalog-header #catalog-intro { display: none; }
  .catalog-header h2 { font-size: 26px; }
  .catalog-tab { min-height: 42px; padding: 8px; }
  .catalog-content { padding-top: 18px; }
}
@media(prefers-reduced-motion:reduce) {
  .features-catalog[open] { animation: none; }
  .features-catalog::backdrop { backdrop-filter: none; }
  .catalog-feature.catalog-tile-animated { opacity: 1; transform: none; transition: none; }
}

/* SoriaHR / Tahta Lagoon: the deck's surfaces, compact geometry and four card tones.
   Existing keyframes, scrolling choreography and tab transitions remain in place. */
.landing-shell { border-radius: var(--landing-radius); background: var(--landing-background); }
.landing-brand>img { width: 124px; height: auto; }
.landing-nav { border-color: var(--landing-border); border-radius: var(--landing-radius); background: var(--landing-surface); box-shadow: var(--landing-surface-shadow); backdrop-filter: none; }
.landing-button,.landing-nav .landing-button,.people-scene .landing-button,.landing-cta .landing-button { background: var(--landing-accent); border: 1px solid var(--landing-accent); border-radius: var(--landing-radius-sm); box-shadow: none; color: #f8fbf9; font-weight: 600; }
.landing-button--catalog { background: var(--landing-accent); color: #f8fbf9; border-color: var(--landing-accent); }
.hero { background: var(--landing-background); }
.scene-copy h1,.scene-copy h2,.bento-section>h2,.landing-cta h2 { font-weight: 700; letter-spacing: -.02em; }
.hero h1>span:last-child { color: var(--landing-accent); }
.landing-eyebrow { color: var(--landing-accent); font-family: ui-monospace,monospace; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.landing-eyebrow:before { content: '[ '; }
.landing-eyebrow:after { content: ' ]'; }
.network-hub { width: 174px; height: 160px; border-radius: var(--landing-radius); border: 1px solid var(--landing-accent); background: var(--landing-accent); box-shadow: var(--landing-surface-shadow); }
.network-hub-label { position: absolute; bottom: 18px; left: 8px; right: 8px; text-align: center; font-size: 12px; font-weight: 600; color: #f8fbf9; }
.hub-symbols { inset: 18% 30% 40%; }
.hub-symbols img { width: 48px; }
.network .actor-tile { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; width: 122px; height: 88px; border: 1px solid var(--landing-border); border-radius: var(--landing-radius); background: var(--landing-surface); box-shadow: var(--landing-surface-shadow); font-size: 12px; font-weight: 600; }
.actor-tile img { width: 26px; height: 26px; filter: var(--landing-icon-filter); }
.icon-tile { border: 1px solid var(--landing-border); border-radius: var(--landing-radius); background: var(--landing-surface); box-shadow: var(--landing-surface-shadow); }
.icon-tile img,.notification>img,.progress-paper>img,.arc-tile>img,.feature-tab-icon img,.feature-panel figcaption>img { filter: var(--landing-icon-filter); }
.people-scene,.features-section { background: #eff4f1; }
.people-scene { border-block: 1px solid var(--landing-border); }
.people-scene .icon-tile { border-radius: var(--landing-radius); box-shadow: var(--landing-surface-shadow); }
.portrait { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 12px; padding: 12px; aspect-ratio: .95; border: 1px solid var(--landing-border); border-radius: var(--landing-radius); background: var(--landing-surface); box-shadow: var(--landing-surface-shadow); text-align: center; }
.portrait>img { width: 32px; height: 32px; filter: var(--landing-icon-filter); }
.portrait>strong { font-size: 14px; line-height: 1.2; font-weight: 600; }
.portrait>span { max-width: 16ch; color: var(--landing-muted); font-size: 11px; line-height: 1.4; }
.bento-card { --card-accent: var(--landing-card-green); border: 1px solid color-mix(in oklab,var(--card-accent) 48%,var(--landing-border)); border-radius: var(--landing-radius); background: color-mix(in oklab,var(--landing-surface) 94%,var(--card-accent) 6%); box-shadow: none; }
.bento-card:nth-child(4n+2) { --card-accent: var(--landing-card-teal); }
.bento-card:nth-child(4n+3) { --card-accent: var(--landing-card-blue); }
.bento-card:nth-child(4n+4) { --card-accent: var(--landing-card-ochre); }
.bento-card h3 { color: var(--card-accent); font-size: 22px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; }
.bento-card p { color: var(--landing-muted); font-size: 15px; line-height: 1.6; }
.chart-paper,.ghost-card,.notification,.paper,.progress-paper { border: 1px solid var(--landing-border); border-radius: var(--landing-radius-sm); background: var(--landing-surface); box-shadow: var(--landing-surface-shadow); }
.documents>img { width: 90px; padding: 20px; background: var(--landing-surface); border: 1px solid var(--landing-border); border-radius: var(--landing-radius); filter: none; }
.team-wheel img { width: 44px; height: 44px; padding: 9px; object-fit: contain; background: var(--landing-surface); border: 1px solid var(--landing-border); border-radius: var(--landing-radius-sm); filter: var(--landing-icon-filter); }
.app-strip img { border-radius: var(--landing-radius-sm); border: 1px solid var(--landing-border); box-shadow: var(--landing-surface-shadow); }
.feature-tabs { gap: 0; border: 1px solid var(--landing-border); border-radius: 6px; background: var(--landing-surface); overflow: hidden; }
.feature-tab { display: grid; grid-template-columns: 34px minmax(0,1fr); align-content: start; align-items: start; gap: 12px; padding: 29px 25px; border: 0; border-bottom: 1px solid var(--landing-border); border-radius: 0; background: transparent; box-shadow: none; }
.feature-tab:last-child { border-bottom: 0; }
.feature-tab:hover { background: var(--landing-tint); box-shadow: none; }
.feature-tab[aria-selected=true] { background: var(--landing-tint); border-color: var(--landing-border); box-shadow: inset 4px 0 var(--landing-accent); }
.feature-tab:focus-visible { outline: 2px solid var(--landing-accent); outline-offset: -4px; }
.feature-tab[aria-selected=true] strong { color: var(--landing-accent); }
.feature-tab>span:nth-child(2) { display: block; min-width: 0; }
.feature-tab-icon,.feature-tab[aria-selected=true] .feature-tab-icon { width: 34px; height: 34px; border-radius: 0; background: transparent; }
.feature-tab-icon img { width: 26px; height: 26px; }
.feature-tab strong { margin: 0; font-size: 16px; line-height: 1.35; }
.feature-description { margin-top: 8px; max-width: 49ch; font-size: 14px; line-height: 1.65; }
@media(min-width:851px) {
  .features-showcase { align-items: stretch; }
  .feature-tabs { display: flex; }
  .feature-tab { flex-shrink: 0; }
  .feature-stage { height: auto; min-height: 0; }
  .feature-panel { inset: 0; }
}
@media(max-width:850px) {
  .feature-tab:nth-child(odd) { border-right: 1px solid var(--landing-border); }
  .feature-tab:nth-child(n+3) { border-bottom: 0; }
}
@media(max-width:600px) {
  .feature-tab { padding: 24px 20px; }
  .feature-tab strong { font-size: 15px; }
  .feature-description { font-size: 13px; }
}
.feature-panel { border-color: var(--landing-border); border-radius: var(--landing-radius); box-shadow: var(--landing-surface-shadow); }
.feature-window-bar { background: #eff4f1; border-color: var(--landing-border); }
.feature-screenshot { padding: 12px; background: var(--landing-surface); }
.arc-section { border: 1px solid var(--landing-border); border-radius: var(--landing-radius); background: var(--landing-surface); box-shadow: none; }
.landing-cta { margin: 0; border: 0; border-radius: 0; background: #eff4f1; box-shadow: none; }
.arc-tile { border: 1px solid var(--landing-border); border-radius: var(--landing-radius); background: #eff4f1; }
.arc-section .icon-tile { background: #eff4f1; border-radius: var(--landing-radius); }
.features-catalog,.catalog-feature,.catalog-icon { border-radius: var(--landing-radius); }
@media(max-width:1050px) { .network .actor-tile { width: 102px; font-size: 11px; } }
@media(max-width:700px) {
  .landing-brand>img { width: 100px; }
  .network-hub { width: 120px; height: 126px; }
  .network-hub-label { font-size: 10px; bottom: 14px; }
  .network .actor-tile { width: 78px; height: 68px; gap: 7px; font-size: 9px; }
  .actor-tile img { width: 22px; height: 22px; }
  .satellite--b { left: 15%; top: 0; }
  .satellite--c { left: 0; top: 60%; }
  .satellite--d { top: 0; }
  .satellite--f { right: 0; top: 73%; }
  .people-scene { height: 980px; padding-top: 170px; }
  .people-scene h2 { font-size: 39px; }
  .portrait { width: 85px; min-height: 108px; padding: 8px 5px; gap: 8px; }
  .portrait>img { width: 23px; height: 23px; }
  .portrait>strong { font-size: 10px; }
  .portrait>span { font-size: 9px; }
  .bento-card h3 { font-size: 20px; }
  .bento-card p { font-size: 14px; }
}

.landing-nav .landing-brand{flex:0 0 124px}.actor-tile{text-align:center;padding:10px;justify-content:center}.actor-tile span{width:100%;line-height:1.3}@media(max-width:700px){.landing-nav .landing-brand{flex-basis:100px}.actor-tile{padding:6px}}
.feature-tab[aria-selected=true] .feature-tab-icon img,.arc-tile:nth-child(even) img{filter:var(--landing-icon-filter)}
@media(max-width:700px){.hero{height:auto;min-height:960px;padding-top:180px;justify-content:flex-start}.hero .network{flex:0 0 260px;margin-bottom:40px}}

/* Employee photos retain the stepped animation; role cards now illustrate coordination. */
.people-portraits>img.portrait{display:block;padding:0;aspect-ratio:.79;object-fit:cover;border:1px solid var(--landing-border);border-radius:8% / 6.32%}
.coordination-orbit .team-wheel>div{transform:rotate(calc(var(--i)*360deg/7)) translateY(-50px)}
.coordination-orbit .team-wheel img{rotate:calc(var(--i)*-360deg/7)}
.coordination-orbit .team-wheel img{background:transparent;border:0;padding:6px}


/* Shared dossier hero: the message leads, the actors move quietly around it. */
.hero.hero--dossier {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: center;
  gap: 0;
  max-width: 1560px;
  min-height: min(100svh, 1020px);
  height: auto;
  margin: auto;
  padding: 170px 32px 110px;
}
.hero.hero--dossier::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset-block: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  pointer-events: none;
  background:
    radial-gradient(ellipse 43% 52% at var(--hero-halo-x,73%) var(--hero-halo-y,49%),#dcebe1 0%,#e7f2ea80 48%,transparent 82%),
    radial-gradient(ellipse 32% 30% at 3% 100%,#e7f2ea 0%,transparent 80%),
    var(--landing-background);
}
.hero--dossier .scene-copy { margin: 0; max-width: none; text-align: left; }
.hero--dossier .landing-eyebrow { margin: 0 0 28px; font-size: 12px; letter-spacing: .12em; }
.hero--dossier .landing-eyebrow::before, .hero--dossier .landing-eyebrow::after { content: none; }
.hero--dossier h1 { font-size: clamp(40px, 5vw, 80px); line-height: 1.12; letter-spacing: -.035em; }
.hero--dossier .scene-copy>p:not(.landing-eyebrow) { max-width: 660px; margin: 32px 0 38px; font-size: clamp(17px, 1.8vw, 28px); line-height: 1.55; }
.hero--dossier .scene-copy>.landing-button { min-height: clamp(56px, 5.3vw, 84px); padding: 20px 34px; gap: 32px; font-size: clamp(17px, 1.6vw, 25px); }
.hero--dossier .hero-dossier { width: 100%; min-width: 0; height: auto; aspect-ratio: 6 / 5; margin: 0; isolation: isolate; }
/* Reuse the original travelling bubbles, with four separate, staggered relays. */
.hero-dossier .hero-dossier__wire { z-index: -1; width: 22%; height: 1px; left: 13%; top: 20%; background: var(--landing-border); transform: rotate(27deg); transform-origin: left center; }
.hero-dossier .hero-dossier__wire::after { width: 7px; height: 7px; top: -3px; background: var(--landing-accent); box-shadow: 0 0 0 4px #0c50320a; animation: wire-travel 3.6s linear infinite; }
.hero-dossier .hero-dossier__wire--hr { left: 87%; transform: rotate(153deg); }
.hero-dossier .hero-dossier__wire--hr::after { animation-delay: -1.8s; }
.hero-dossier .hero-dossier__wire--manager { top: 81%; transform: rotate(-27deg); }
.hero-dossier .hero-dossier__wire--manager::after { animation-delay: -.9s; animation-direction: reverse; }
.hero-dossier .hero-dossier__wire--insurer { top: 81%; left: 87%; transform: rotate(207deg); }
.hero-dossier .hero-dossier__wire--insurer::after { animation-delay: -2.7s; animation-direction: reverse; }
.hero-dossier__card {
  position: absolute;
  top: 15%;
  left: 27%;
  width: 46%;
  padding: 64px 26px 20px;
  border: 1px solid var(--landing-border);
  border-radius: 16px;
  background: var(--landing-surface);
  box-shadow: 0 12px 28px #1c2b2308;
  animation: hero-dossier-float 7s ease-in-out infinite;
}
.hero-dossier__heading { display: flex; flex-direction: column; align-items: center; gap: 20px; padding-bottom: 26px; text-align: center; }
.hero-dossier__badge { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; border-radius: var(--landing-radius); background: #e1eee5; }
.hero-dossier__heading>.hero-dossier__badge { position: absolute; top: 0; left: 50%; transform: translate(-50%,-50%); width: 60px; height: 60px; border-radius: 10px; outline: 3px solid var(--landing-surface); }
.hero-dossier__heading>strong { font-size: clamp(15px, 1.4vw, 22px); line-height: 1.3; letter-spacing: -.025em; }
.hero-dossier__rows { margin: 0; padding: 0; list-style: none; }
.hero-dossier__rows>li { display: flex; align-items: center; gap: 14px; min-height: 98px; padding: 20px 0; border-top: 1px solid var(--landing-border); font-size: clamp(12px, 1.05vw, 17px); line-height: 1.4; }
.hero-dossier__rows img { width: 28px; height: 28px; }
.hero-dossier__detail { flex: 1; min-width: 0; }
.hero-dossier__lines { display: grid; gap: 7px; margin-top: 10px; }
.hero-dossier__lines>i { display: block; width: 100%; height: 6px; border-radius: 4px; background: #e4eae7; }
.hero-dossier__lines>i+ i { width: 62%; }
.hero-dossier__actor { position: absolute; scale: .95; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; width: 18%; min-height: 19%; padding: 16px 8px; border: 1px solid var(--landing-border); border-radius: 6px; background: var(--landing-surface); box-shadow: var(--landing-surface-shadow); text-align: center; font-size: clamp(11px, 1.05vw, 16px); line-height: 1.3; animation: hero-actor-float 6s ease-in-out infinite; }
.hero-dossier__actor>img { width: 30px; height: 30px; }
.hero-dossier img { filter: var(--landing-icon-filter); }
.hero-dossier__actor--employee { left: 0; top: 6%; }
.hero-dossier__actor--hr { right: 0; top: 6%; animation-delay: -2s; }
.hero-dossier__actor--manager { left: 0; bottom: 6%; animation-delay: -3s; }
.hero-dossier__actor--insurer { right: 0; bottom: 6%; animation-delay: -1s; }
@keyframes hero-dossier-float { 0%,100% { transform: translateY(0) rotate(-.5deg); } 50% { transform: translateY(-6px) rotate(.5deg); } }
@keyframes hero-actor-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@media(max-width:1100px) {
  .hero.hero--dossier { padding: 180px 28px 80px; }
  .hero-dossier__card { padding: 58px 14px 10px; }
  .hero-dossier__heading { gap: 12px; padding-bottom: 15px; }
  .hero-dossier__rows>li { min-height: 62px; padding: 12px 0; gap: 8px; }
}
@media(max-width:850px) {
  .hero.hero--dossier { --hero-halo-x: 50%; --hero-halo-y: 74%; }
  .hero.hero--dossier { grid-template-columns: minmax(0, 1fr); gap: 36px; min-height: 0; padding: 185px 24px 70px; }
  .hero--dossier .scene-copy { max-width: 650px; margin: auto; text-align: center; }
  .hero--dossier h1 { font-size: clamp(36px, 6.2vw, 52px); }
  .hero--dossier .landing-eyebrow { margin-bottom: 22px; font-size: 10px; }
  .hero--dossier .scene-copy>p:not(.landing-eyebrow) { margin: 24px auto 28px; font-size: 17px; }
  .hero--dossier .scene-copy>.landing-button { min-height: 56px; font-size: 16px; padding: 15px 22px; }
  .hero--dossier .hero-dossier { max-width: 600px; margin: auto; }
  .hero-dossier__heading>strong { font-size: 17px; }
  .hero-dossier__rows>li { font-size: 13px; min-height: 70px; }
  .hero-dossier__actor { font-size: 13px; }
}
@media(max-width:480px) {
  .hero.hero--dossier { padding: 180px 16px 55px; gap: 32px; }
  .hero--dossier h1 { font-size: clamp(32px, 8.8vw, 42px); }
  .hero--dossier .hero-dossier { min-height: 520px; aspect-ratio: 1 / 1.45; }
  .hero-dossier__card { top: 20%; left: 16%; width: 68%; min-height: 0; padding: 44px 12px 8px; border-radius: 10px; }
  .hero-dossier__heading { gap: 12px; padding-bottom: 18px; }
  .hero-dossier__heading>strong { font-size: 14px; }
  .hero-dossier__heading>.hero-dossier__badge { width: 44px; height: 44px; }
  .hero-dossier__heading>.hero-dossier__badge>img { width: 28px; height: 28px; }
  .hero-dossier__rows>li { font-size: 11px; min-height: 60px; gap: 8px; }
  .hero-dossier__rows .hero-dossier__badge { width: 32px; height: 32px; flex-basis: 32px; }
  .hero-dossier__rows img { width: 21px; height: 21px; }
  .hero-dossier__lines { gap: 5px; margin-top: 7px; }
  .hero-dossier__lines>i { height: 4px; }
  .hero-dossier .hero-dossier__wire { width: 48%; top: 12%; transform: rotate(62deg); }
  .hero-dossier .hero-dossier__wire--hr { transform: rotate(118deg); }
  .hero-dossier .hero-dossier__wire--manager { top: 88%; transform: rotate(-62deg); }
  .hero-dossier .hero-dossier__wire--insurer { top: 88%; transform: rotate(242deg); }
  .hero-dossier__actor { width: 28%; min-height: 17%; font-size: 11px; padding: 10px 5px; gap: 6px; }
  .hero-dossier__actor>img { width: 24px; height: 24px; }
  .hero-dossier__actor--employee,.hero-dossier__actor--manager { left: 0; }
  .hero-dossier__actor--hr,.hero-dossier__actor--insurer { right: 0; }
  .hero-dossier__actor--employee,.hero-dossier__actor--hr { top: 0; }
  .hero-dossier__actor--manager,.hero-dossier__actor--insurer { bottom: 0; }
}
@media(prefers-reduced-motion:reduce) {
  .hero-dossier__card,.hero-dossier__actor,.hero-dossier .hero-dossier__wire::after { animation: none; }
  .hero-dossier .hero-dossier__wire::after { display: none; }
  .hero--dossier .landing-button { transition: none; }
  .hero--dossier .landing-button:hover { transform: none; }
}

.people-scene{height:105vh;min-height:850px;padding:70px 24px}
.people-scene .scene-copy{width:min(680px,46%);max-width:680px;align-self:center;margin:auto;transform:none}
.people-scene .scene-copy>p{max-width:560px}
@media(min-width:701px) and (max-width:1050px){.people-scene .scene-copy{width:40%}}
@media(max-width:700px){.people-scene{height:980px;min-height:0;padding:170px 25px 150px}.people-scene .scene-copy{width:100%;max-width:560px}.people-scene .scene-copy>p{max-width:100%}}

/* Each organisation dimension can be selected while retaining the animated arc. */
.arc-section{max-width:1680px;margin:0 auto;padding:70px 16px 115px;min-height:0;border:0;border-radius:0;background:transparent}
.arc-section>.scene-copy{max-width:820px;margin-bottom:50px}
.arc-panel{display:grid;padding:40px 28px 28px}
.arc-panel .feature-arc{grid-area:1 / 1;height:clamp(200px,calc(50vw - 110px),470px);margin:0 0 96px}
.arc-section>.scene-copy>p{max-width:650px}
.arc-tile{padding:0;color:var(--landing-ink);font:inherit;cursor:pointer;transition:background .2s,border-color .2s}
.arc-tile[aria-pressed=true]{background:#e1eee5;border-color:var(--landing-accent);box-shadow:var(--landing-surface-shadow)}
.arc-tile:focus-visible{outline:2px solid var(--landing-accent);outline-offset:5px}
.arc-caption{grid-area:1 / 1;align-self:center;justify-self:center;width:min(420px,52%);margin:0;text-align:center;pointer-events:none}
.arc-panel .arc-label{font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--card-accent)}
.arc-description{margin:12px auto 0;font-size:15px;line-height:1.6;color:var(--landing-muted)}
@media(max-width:700px){.arc-section{padding:50px 16px 75px}.arc-section>.scene-copy{margin-bottom:30px}.arc-panel{padding:30px 20px 24px}.arc-panel .feature-arc{margin-bottom:116px}.arc-panel .arc-label{font-size:18px}.arc-description{font-size:14px}}

/* Consistent spacing above the four section headings. */
.bento-section,.features-section,.arc-section,.landing-cta{padding-top:70px}
.landing-cta{justify-content:flex-start}
@media(max-width:700px){.bento-section,.features-section,.arc-section,.landing-cta{padding-top:50px}}

/* Fill the viewport below the menu, growing only when the content needs more room. */
html:has(.landing-shell) { scroll-padding-top: 0; }
#landing-content>section {
  scroll-margin-top: 0;
}
.hero.hero--dossier,.people-scene,.bento-section,.features-section,.arc-section,.absence-section {
  min-height: calc(100dvh - var(--landing-nav-height));
  height: auto;
  padding-block: clamp(48px,7vh,96px);
}
.hero.hero--dossier {
  padding-block: clamp(110px,14vh,170px);
  align-content: center;
}
.bento-section,.features-section,.arc-section,.absence-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.bento-section>*,.features-section>*,.arc-section>*,.absence-section>* { flex-shrink: 0; }
.features-section>.scene-copy,.arc-section>.scene-copy { margin-top: 0; }
.features-section>.scene-copy { width: 100%; max-width: var(--landing-content-width); }
.features-section>.scene-copy>p { max-width: 1040px; text-wrap: balance; }
@media(min-width:1051px) {
  .features-section #features-title { white-space: nowrap; }
}
.features-showcase { width: 100%; }
.landing-shell {
  --landing-nav-height: 88px;
  --landing-content-width: 1648px;
  --landing-content-gutter: 32px;
  margin-inline: 0;
}
.bento-section { max-width: none; background: var(--landing-background); }
.hero.hero--dossier {
  width: calc(100% - 2 * var(--landing-content-gutter));
  max-width: var(--landing-content-width);
  margin-inline: auto;
}
.hero.hero--dossier { padding-inline: 0; }
.bento-section,.features-section,.arc-section,.absence-section,.landing-cta {
  width: 100%;
  max-width: none;
  padding-inline: var(--landing-content-gutter);
  margin-inline: auto;
}
.bento-section>h2,.bento-section>.bento-grid,.features-showcase,.arc-panel {
  width: 100%;
  max-width: var(--landing-content-width);
  margin-inline: auto;
}
.features-showcase { padding-inline: 0; }
@media(max-width:700px) {
  .landing-shell { --landing-content-gutter: 8px; }
}
@media(max-width:1050px) {
  .hero.hero--dossier { padding-block: 165px; }
}

/* A closer composition, scaled together across large screens. */
.people-scene{--portrait-width:clamp(72px,9.4vw,220px);--people-composition-width:min(78vw,1980px)}
.people-scene .scene-copy{width:48vw;max-width:1220px}
.people-scene h2{font-size:clamp(36px,4.5vw,68px)}
.people-scene .scene-copy>p{max-width:44vw;margin:clamp(25px,2.3vw,48px) auto clamp(32px,2.5vw,56px);font-size:16px;line-height:1.5}
.people-scene .landing-button,.features-catalog-action .landing-button{width:280px;min-width:280px;min-height:56px;padding:16px 28px;font-size:16px;line-height:1.5}
.features-catalog-action .landing-button{padding-inline:10px;white-space:nowrap}
.people-portraits .portrait-column{
  --portrait-gap:28px;
  position:absolute;
  top:50%;
  left:calc((100% - var(--people-composition-width))/2);
  width:var(--portrait-width);
  height:calc(var(--portrait-width)*3.4 + 84px);
  max-height:calc(100% - 96px);
  transform:translateY(-50%);
  overflow:hidden;
  pointer-events:auto;
  mask-image:linear-gradient(to bottom,transparent,#000 22%,#000 78%,transparent);
}
.people-portraits .portrait-column:last-child{left:auto;right:calc((100% - var(--people-composition-width))/2)}
.people-portraits .portrait-column>.portrait{
  display:block;
  width:100%;
  height:auto;
  min-height:0;
  aspect-ratio:.9;
  padding:0;
  object-fit:cover;
  border:1px solid var(--landing-border);
  border-radius:8% / 7.2%;
  box-shadow:none;
}
@media(max-width:700px){
  .people-scene{--portrait-width:clamp(40px,8vw,56px);--people-composition-width:calc(100% - 16px);padding:70px 12px}
  .people-scene .scene-copy{width:calc(100% - 120px);max-width:560px}
  .people-scene h2{font-size:clamp(26px,5.5vw,39px)}
  .people-scene .scene-copy>p{max-width:100%;font-size:15px}
  .people-scene .landing-button,.features-catalog-action .landing-button{width:280px;max-width:100%;min-width:0;padding:16px 10px;font-size:16px}
  .people-portraits .portrait-column{--portrait-gap:16px;height:calc(var(--portrait-width)*3.4 + 48px)}
}

/* Full-width navigation from the /2 landing variant. */
html:has(.landing-shell),body:has(.landing-shell) { overflow: hidden; }
.landing-shell {
  display: grid;
  grid-template-rows: auto minmax(0,1fr);
  height: 100dvh;
  margin: 0;
  overflow: hidden;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.landing-scroll { min-height: 0; overflow-y: auto; overflow-x: hidden; scroll-behavior: smooth; }
@media(prefers-reduced-motion:reduce) { .landing-scroll { scroll-behavior: auto; } }
.landing-nav {
  position: static;
  top: 0;
  left: auto;
  transform: none;
  width: 100%;
  max-width: none;
  min-height: 88px;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: 24px;
  padding: 18px max(28px,calc((100vw - 1320px)/2));
  border: 0;
  border-bottom: 1px solid var(--landing-border);
  border-radius: 0;
  background: var(--landing-background);
  box-shadow: none;
}
.landing-nav .landing-brand { flex: 0 0 auto; }
.landing-nav .landing-brand img { width: 148px; }
.landing-nav__links,.landing-nav__actions { display: flex; align-items: center; gap: 24px; font-size: 15px; font-weight: 500; }
.landing-nav__links { order: 0; width: auto; flex-wrap: nowrap; padding: 0; overflow: visible; }
.landing-nav .landing-login { display: inline; }
.landing-nav a:hover { color: var(--landing-accent); }
.landing-nav .landing-button { gap: 16px; min-height: 46px; padding: 12px 22px; border-radius: 5px; font-size: 15px; font-weight: 600; line-height: 1.4; transition: background .2s; }
.landing-nav .landing-button:hover { background: #083d26; color: white; transform: none; box-shadow: none; }
@media(max-width:1100px) {
  .landing-nav { gap: 12px; }
  .landing-nav__links { gap: 14px; }
  .landing-nav__actions { gap: 16px; }
  .landing-nav .landing-brand img { width: 124px; }
}
@media(max-width:980px) {
  .landing-nav__links { display: none; }
}
@media(max-width:600px) {
  .landing-shell { --landing-nav-height: 72px; }
  .landing-nav { min-height: 72px; padding: 14px 20px; gap: 12px; flex-wrap: wrap; }
  .landing-nav .landing-brand img { width: 110px; }
  .landing-nav__actions { gap: 12px; }
  .landing-nav .landing-button { padding: 10px 12px; min-height: 40px; gap: 6px; }
  .landing-nav .landing-button svg { display: none !important; }
}
@media(max-width:380px) {
  .landing-nav { padding-inline: 12px; }
  .landing-nav .landing-brand img { width: 90px; }
  .landing-nav__actions { gap: 8px; }
  .landing-nav .landing-button { padding-inline: 8px; }
}

/* Six organisation dimensions connected to the selected central theme. */
.arc-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  background: var(--landing-background);
}
.arc-section>.scene-copy { width: 100%; max-width: var(--landing-content-width); margin: 0; text-align: center; }
.arc-section h2 { max-width: 960px; margin-inline: auto; font-size: clamp(36px,4.5vw,68px); line-height: 1.12; text-wrap: balance; }
.arc-section>.scene-copy>p { max-width: 1440px; margin: 24px auto 0; font-size: 16px; line-height: 1.65; text-wrap: balance; }
.arc-section .arc-panel {
  --connection-tile-size: clamp(56px,calc((100vw - 2 * var(--landing-content-gutter)) * .08),132px);
  --connection-center-size: clamp(96px,calc((100vw - 2 * var(--landing-content-gutter)) * .097),160px);
  position: relative;
  display: block;
  width: 100%;
  max-width: var(--landing-content-width);
  height: auto;
  min-height: 360px;
  aspect-ratio: 1000 / 360;
  padding: 0;
  margin: 0 auto;
  border: 0;
  background: radial-gradient(ellipse 43% 52% at 50% 50%,#dcebe1 0%,#e7f2ea80 48%,transparent 82%);
  box-shadow: none;
}
.arc-panel .feature-arc { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.arc-connections { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.arc-connection { color: #d3e1d9; transition: color .4s; }
.arc-connection path { fill: none; stroke: currentColor; stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.arc-connection circle { fill: currentColor; }
.arc-connection.is-active { color: var(--landing-accent); }
.arc-transfer { opacity: 0; pointer-events: none; }
.arc-transfer-tail { fill: none; stroke: #4c9770; stroke-width: 2.5; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.arc-transfer-tail:nth-child(1) { opacity: .16; }
.arc-transfer-tail:nth-child(2) { opacity: .38; }
.arc-transfer-tail:nth-child(3) { opacity: .7; }
.arc-transfer-halo { fill: #70b18b; opacity: .14; }
.arc-transfer-head { fill: var(--landing-accent); stroke: #eef7f1; stroke-width: 1; vector-effect: non-scaling-stroke; }
.arc-panel .arc-tile {
  top: calc(13.8889% - var(--connection-tile-size) / 2);
  left: 0;
  width: var(--connection-tile-size);
  height: var(--connection-tile-size);
  border-radius: 6px;
  background: var(--landing-surface);
  transform: none;
  will-change: auto;
  transition: background .3s,border-color .3s;
}
.arc-panel .arc-tile:nth-child(2),.arc-panel .arc-tile:nth-child(5) { top: calc(50% - var(--connection-tile-size) / 2); }
.arc-panel .arc-tile:nth-child(3),.arc-panel .arc-tile:nth-child(6) { top: calc(86.1111% - var(--connection-tile-size) / 2); }
.arc-panel .arc-tile:nth-child(n+4) { left: auto; right: 0; }
.arc-panel .arc-tile>img { width: 44%; }
.arc-panel .arc-tile[aria-pressed=true] { background: #f5faf6; border-color: var(--landing-accent); box-shadow: none; }
.arc-panel .arc-caption {
  position: absolute;
  top: calc(50% - var(--connection-center-size) / 2);
  left: 28%;
  width: 44%;
  margin: 0;
  padding: 0;
  text-align: center;
  pointer-events: none;
}
.arc-center-icon { display: grid; place-items: center; width: var(--connection-center-size); height: var(--connection-center-size); margin: 0 auto 18px; border: 1px solid var(--landing-accent); border-radius: 12px; background: var(--landing-surface); animation: hero-dossier-float 7s ease-in-out infinite; }
.arc-center-icon img { width: 48%; height: 48%; filter: var(--landing-icon-filter); }
.arc-panel .arc-label { margin: 0; font-size: 22px; color: var(--landing-accent); }
.arc-panel .arc-description { margin: 12px 0 0; font-size: 15px; line-height: 1.55; }
@media(max-width:700px) {
  .arc-section { padding-inline: 20px; gap: 30px; }
  .arc-section h2 { font-size: 36px; }
  .arc-section .arc-panel { --connection-tile-size: 56px; height: 380px; aspect-ratio: auto; }
  .arc-panel .arc-caption { left: 22%; width: 56%; top: calc(50% - 48px); }
  .arc-center-icon { width: 96px; height: 96px; margin-bottom: 16px; }
  .arc-center-icon img { width: 44px; height: 44px; }
  .arc-panel .arc-label { font-size: 18px; }
  .arc-panel .arc-description { font-size: 13px; margin-top: 8px; }
}
@media(prefers-reduced-motion:reduce) {
  .arc-transfer { display: none; }
  .arc-center-icon { animation: none; }
}

/* Three spaced headings and a compact, centered invitation. */
.landing-cta {
  position: relative;
  margin: 0;
  min-height: 460px;
  padding: 76px var(--landing-content-gutter);
  justify-content: center;
  align-items: center;
  background: var(--landing-accent);
  color: #f6faf7;
}
.landing-cta>div { width: 100%; max-width: var(--landing-content-width); }
.landing-cta h2 {
  display: grid;
  grid-template-columns: repeat(3,max-content);
  justify-content: center;
  gap: clamp(20px,3vw,40px);
  margin: 0;
  padding: 0 12px;
  color: #f6faf7;
  font-size: clamp(32px,4vw,68px);
  line-height: 1.12;
  text-align: center;
}
.landing-cta__action { display: flex; flex-direction: column; align-items: center; gap: 40px; margin-top: 56px; }
.landing-cta p { max-width: 1240px; margin: 0; color: #c6dace; font-size: 17px; line-height: 1.6; text-align: center; text-wrap: balance; }
.landing-cta .landing-button {
  min-width: 280px;
  min-height: 56px;
  padding: 16px 28px;
  background: #f6faf7;
  border-color: #f6faf7;
  color: var(--landing-accent);
  font-size: 16px;
  line-height: 1.5;
}
.landing-cta .landing-button:hover { background: #e1eee5; border-color: #e1eee5; }
.landing-cta .landing-button:focus-visible { outline-color: #f6faf7; }
@media(max-width:700px) {
  .landing-cta { min-height: 400px; padding: 48px 24px; }
  .landing-cta h2 { grid-template-columns: 1fr; gap: 16px; padding: 0; font-size: 36px; }
  .landing-cta__action { flex-direction: column; gap: 28px; margin-top: 32px; }
  .landing-cta p { font-size: 16px; text-align: center; }
  .landing-cta .landing-button { min-width: 0; width: min(280px,100%); }
}

/* Align navigation and footer content with the section content column. */
.landing-nav,.landing-footer {
  padding-inline: max(var(--landing-content-gutter),calc((100% - var(--landing-content-width)) / 2));
}
.landing-footer {
  min-height: 96px;
  padding-block: 24px;
  align-items: center;
  align-content: center;
}
@media(min-width:1051px) {
  .landing-footer { height: 96px; padding-block: 0; }
}
.landing-nav {
  --nav-content-inset: max(var(--landing-content-gutter),calc((100% - var(--landing-scrollbar-width,0px) - var(--landing-content-width)) / 2));
  padding-left: var(--nav-content-inset);
  padding-right: calc(var(--nav-content-inset) + var(--landing-scrollbar-width,0px));
}
/* Compensate for the logo's 10-unit left inset in its 248-unit viewBox. */
.landing-nav .landing-brand>img,.landing-footer .landing-brand>img {
  transform: translateX(-4.032258%);
}

/* Use identical fixed boxes for both demo buttons. */
.landing-shell .landing-nav .landing-button,.landing-shell .landing-cta .landing-button {
  box-sizing: border-box;
  width: 280px;
  max-width: 100%;
  height: 58px;
  flex-shrink: 0;
  min-width: 0;
  min-height: 0;
  padding: 0 20px;
  gap: 10px;
  font-size: 16px;
  line-height: 24px;
}
@media(max-width:600px) {
  .landing-nav__actions { max-width: 100%; flex-wrap: wrap; justify-content: flex-end; }
}

/* The comparison and its arrow share the same scale and track width. */
.absence-section {
  align-items: center;
  background: #eff4f1;
}
.absence-content { width: 100%; max-width: var(--landing-content-width); margin-inline: auto; }
.absence-heading { text-align: center; transform: translateY(-24px); }
.absence-chart figcaption,.absence-source { text-align: left; }
.absence-heading h2 { margin: 0; font-size: clamp(34px,4.5vw,68px); line-height: 1.12; font-weight: 700; letter-spacing: -.04em; }
.absence-heading h2 span { display: block; }
.absence-heading>p { margin: 26px 0 0; font-size: 16px; line-height: 1.6; color: var(--landing-muted); }
.absence-chart { margin: clamp(36px,5vh,64px) 0 0; }
.absence-chart h3 { margin: 0; font-size: 22px; font-weight: 600; line-height: 1.3; }
.absence-chart figcaption p { margin: 8px 0 0; font-size: 16px; line-height: 1.5; color: var(--landing-muted); }
.absence-plot {
  --absence-baseline: calc(100% * 6.3 / 8.5);
  --absence-bar-height: 40px;
  --absence-row-gap: 28px;
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) 140px;
  grid-template-rows: 40px var(--absence-bar-height) var(--absence-bar-height);
  column-gap: 16px;
  row-gap: var(--absence-row-gap);
  margin-top: 8px;
}
.absence-year { grid-column: 1; align-self: center; font-size: 16px; color: var(--landing-muted); }
.absence-year--previous,.absence-bar--previous { grid-row: 2; }
.absence-year--current,.absence-bar--current { grid-row: 3; }
.absence-bar { grid-column: 2; position: relative; min-width: 0; }
.absence-bar--previous { width: var(--absence-baseline); }
.absence-bar-fill { display: block; height: 100%; border-radius: 2px; background: var(--landing-accent); transform-origin: left; transition: transform 1.4s cubic-bezier(.22,1,.36,1); }
.absence-bar--previous .absence-bar-fill { background: #c6ddcf; }
.absence-value { position: absolute; left: calc(100% + 16px); top: 50%; transform: translateY(-50%); white-space: nowrap; font-size: 26px; font-weight: 600; color: var(--landing-accent); }
.absence-bar--previous .absence-value { font-size: 18px; color: var(--landing-muted); }
.absence-delta {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  position: relative;
  margin-left: var(--absence-baseline);
  height: 1px;
  background: var(--landing-accent);
  color: var(--landing-accent);
  opacity: 1;
  transition: opacity .35s ease 1.4s;
}
.absence-delta::after { content: ''; position: absolute; right: 1px; top: -4px; width: 8px; height: 8px; border-top: 1px solid; border-right: 1px solid; transform: rotate(45deg); }
.absence-delta-label { position: absolute; bottom: 17px; left: 50%; transform: translateX(-50%); text-align: center; white-space: nowrap; }
.absence-delta-label strong { display: block; font-size: 24px; font-weight: 600; }
.absence-delta-label span { display: block; margin-top: 4px; font-size: 15px; color: var(--landing-muted); }
.absence-delta-start,.absence-delta-end { position: absolute; top: 0; width: 0; border-left: 1px dashed #9bbcac; pointer-events: none; }
.absence-delta-start { left: 0; height: calc(var(--absence-row-gap) + var(--absence-bar-height) / 2); }
.absence-delta-end { right: 0; height: calc(2 * var(--absence-row-gap) + 1.5 * var(--absence-bar-height)); }
.absence-chart--pending .absence-bar-fill { transform: scaleX(0); }
.absence-chart--pending .absence-delta { opacity: 0; }
.absence-frictions { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 48px; border: 1px solid var(--landing-border); border-left: 4px solid var(--landing-accent); border-radius: 5px; background: var(--landing-surface); overflow: hidden; }
.absence-frictions article { min-width: 0; padding: 30px 26px; }
.absence-frictions article+article { border-left: 1px solid var(--landing-border); }
.absence-friction-heading { display: flex; align-items: center; gap: 16px; min-height: 49px; margin-bottom: 18px; }
.absence-frictions img { display: block; flex: 0 0 30px; width: 30px; height: 30px; filter: var(--landing-icon-filter); }
.absence-frictions h3 { margin: 0; font-size: 18px; line-height: 1.35; font-weight: 600; }
.absence-frictions p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--landing-muted); }
.absence-source { margin: 20px 0 0; font-size: 12px; line-height: 1.6; color: var(--landing-muted); }
@media(max-width:900px) {
  .absence-frictions { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .absence-frictions article:nth-child(3) { border-left: 0; }
  .absence-frictions article:nth-child(n+3) { border-top: 1px solid var(--landing-border); }
  .absence-plot { grid-template-columns: 42px minmax(0,1fr) 108px; grid-template-rows: 88px var(--absence-bar-height) var(--absence-bar-height); }
  .absence-value { font-size: 22px; }
}
@media(max-width:600px) {
  .absence-heading h2 { font-size: 34px; }
  .absence-chart h3 { font-size: 19px; }
  .absence-plot { --absence-bar-height: 30px; --absence-row-gap: 32px; grid-template-columns: 36px minmax(0,1fr) 76px; column-gap: 10px; }
  .absence-year { font-size: 14px; }
  .absence-value,.absence-bar--previous .absence-value { left: calc(100% + 10px); font-size: 16px; }
  .absence-delta-label { left: auto; right: 0; transform: none; text-align: right; }
  .absence-delta-label strong { font-size: 20px; }
  .absence-frictions { grid-template-columns: 1fr; margin-top: 36px; }
  .absence-frictions article { padding: 22px; }
  .absence-frictions article+article { border-left: 0; border-top: 1px solid var(--landing-border); }
  .absence-friction-heading { min-height: 30px; margin-bottom: 14px; }
  .absence-frictions h3 { font-size: 16px; }
  .absence-frictions p { font-size: 14px; }
}
@media(prefers-reduced-motion:reduce) {
  .absence-bar-fill { transition: none; }
  .absence-chart--pending .absence-bar-fill { transform: none; }
  .absence-delta,.absence-chart--pending .absence-delta { opacity: 1; transition: none; }
}

.pricing-section {
  --pricing-control-height: clamp(64px,5.7vw,96px);
  display: flex;
  align-items: center;
  min-height: calc(100dvh - var(--landing-nav-height));
  padding: clamp(48px,7vh,96px) var(--landing-content-gutter);
  background: var(--landing-background);
}
.pricing-content {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  column-gap: 24px;
  row-gap: clamp(40px,3.5vw,64px);
  max-width: var(--landing-content-width);
  margin-inline: auto;
}
.pricing-copy { grid-column: 1 / -1; text-align: center; }
.pricing-entry,.pricing-estimate { min-width: 0; padding: clamp(24px,2.5vw,44px); border: 1px solid var(--landing-border); border-radius: 6px; transition: opacity .7s,transform .7s,filter .7s; }
.pricing-estimate { transition-delay: 90ms; }
.pricing-card-pending { opacity: 0; transform: translateY(55px); filter: blur(8px); }
@media(prefers-reduced-motion:reduce) {
  .pricing-entry,.pricing-estimate { opacity: 1; transform: none; filter: none; transition: none; }
}
.pricing-entry { display: flex; flex-direction: column; justify-content: space-between; gap: 40px; background: var(--landing-surface); }
.pricing-copy h2 { margin: 0; font-size: clamp(34px,4.5vw,68px); font-weight: 700; line-height: 1.12; letter-spacing: -.035em; }
.pricing-copy p { max-width: none; margin: 24px 0 0; font-size: clamp(17px,1.8vw,28px); line-height: 1.55; color: var(--landing-muted); }
.pricing-field { position: relative; width: 100%; }
.pricing-field label { display: block; margin-bottom: 24px; font-size: clamp(20px,2vw,32px); font-weight: 600; line-height: 1.4; letter-spacing: -.02em; }
.pricing-stepper { display: grid; grid-template-columns: var(--pricing-control-height) minmax(0,1fr) var(--pricing-control-height); height: var(--pricing-control-height); border: 1px solid var(--landing-border); border-radius: var(--landing-radius); background: var(--landing-surface); }
.pricing-stepper:focus-within { outline: 2px solid var(--landing-accent); outline-offset: 3px; }
.pricing-stepper button { display: grid; place-items: center; min-width: 0; padding: 0; border: 0; background: transparent; color: var(--landing-ink); border-radius: var(--landing-radius-sm); }
.pricing-stepper button:first-child { border-right: 1px solid var(--landing-border); }
.pricing-stepper button:last-child { border-left: 1px solid var(--landing-border); }
.pricing-stepper button:hover:not(:disabled) { background: var(--landing-tint); }
.pricing-stepper button:disabled { opacity: .35; cursor: default; }
.pricing-stepper input { appearance: textfield; min-width: 0; width: 100%; padding: 0 8px; border: 0; background: transparent; font: 600 clamp(28px,2.8vw,48px)/1 var(--landing-font); font-variant-numeric: tabular-nums; text-align: center; color: var(--landing-ink); }
.pricing-stepper input::-webkit-inner-spin-button,.pricing-stepper input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.pricing-stepper input:focus { outline: none; }
.pricing-error { position: absolute; top: 100%; margin: 8px 0 0; font-size: 13px; line-height: 1.4; color: #9b2c2c; }
.pricing-estimate { background: #f1f7f3; border-color: #9bbdaf; }
.pricing-estimate h3 { margin: 0; font-size: clamp(20px,2vw,32px); line-height: 1.4; font-weight: 600; letter-spacing: -.02em; }
.pricing-total { margin-block: 24px 36px; }
.pricing-total>span { display: block; margin-bottom: 8px; color: var(--landing-muted); font-size: clamp(17px,1.5vw,24px); }
.pricing-total output { display: block; color: var(--landing-accent); font-size: clamp(56px,6.4vw,112px); font-weight: 600; line-height: 1.15; letter-spacing: -.035em; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.pricing-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 0; padding-top: clamp(28px,2.5vw,44px); border-top: 1px solid var(--landing-border); }
.pricing-details>div { min-width: 0; }
.pricing-details>div:first-child { padding-right: 20px; }
.pricing-details>div+div { padding-left: clamp(20px,4vw,72px); border-left: 1px solid var(--landing-border); }
.pricing-details dt { font-size: clamp(17px,1.5vw,24px); color: var(--landing-muted); }
.pricing-details dd { margin: 12px 0 0; font-size: clamp(28px,2.8vw,44px); font-weight: 600; line-height: 1.2; font-variant-numeric: tabular-nums; }
.pricing-estimate .pricing-demo { display: flex; width: 100%; height: clamp(56px,5vw,84px); padding: 0 16px; gap: 16px; font-size: clamp(16px,1.4vw,22px); }
.pricing-note { margin: 16px 0 0; font-size: clamp(12px,1vw,16px); line-height: 1.4; color: var(--landing-muted); }
@media(max-width:900px) {
  .pricing-copy p { font-size: 17px; }
}
@media(max-width:700px) {
  .pricing-content { grid-template-columns: minmax(0,1fr); gap: 40px; }
  .pricing-entry,.pricing-estimate { padding: 24px 20px; }
  .pricing-entry { gap: 32px; }
  .pricing-copy p { margin-top: 20px; }
  .pricing-total { margin-block: 20px 24px; }
  .pricing-stepper { grid-template-columns: 56px minmax(0,1fr) 56px; }
}

.people-scene>.scene-copy>p:not(.landing-eyebrow),
.features-section>.scene-copy>p:not(.landing-eyebrow),
.arc-section>.scene-copy>p:not(.landing-eyebrow),
.absence-heading>p,
.landing-cta__action>p {
  font-size: clamp(17px,1.8vw,28px);
}
@media(max-width:900px) {
  .people-scene>.scene-copy>p:not(.landing-eyebrow),
  .features-section>.scene-copy>p:not(.landing-eyebrow),
  .arc-section>.scene-copy>p:not(.landing-eyebrow),
  .absence-heading>p,
  .landing-cta__action>p {
    font-size: 17px;
  }
}

/* Desktop sections share the space below the menu; their bodies yield as height shrinks.
   Below 720px, retain the minimum composition height. Stacked mobile layouts can grow. */
@media(min-width:851px) {
  .landing-shell {
    --landing-section-height: calc(max(720px,100dvh) - var(--landing-nav-height));
    --landing-section-padding: clamp(20px,3dvh,48px);
    --landing-section-gap: clamp(16px,2.5dvh,36px);
    --landing-heading-size: clamp(32px,min(4.5vw,5.4dvh),68px);
    --landing-lead-size: clamp(17px,min(1.8vw,2.2dvh),28px);
  }
  #landing-content>section:not(.landing-cta) {
    height: var(--landing-section-height);
    min-height: var(--landing-section-height);
    padding-block: var(--landing-section-padding);
  }
  .people-scene h2,.bento-section>h2,.features-section h2,.arc-section h2,.absence-heading h2,.pricing-copy h2 {
    font-size: var(--landing-heading-size);
  }
  .hero--dossier .scene-copy>p:not(.landing-eyebrow),.people-scene>.scene-copy>p:not(.landing-eyebrow),
  .features-section>.scene-copy>p:not(.landing-eyebrow),.arc-section>.scene-copy>p:not(.landing-eyebrow),
  .absence-heading>p,.pricing-copy p {
    font-size: var(--landing-lead-size);
    line-height: 1.5;
    margin-block: var(--landing-section-gap) 0;
  }
  .hero--dossier h1 { font-size: clamp(36px,min(5vw,7dvh),80px); }
  .hero--dossier .landing-eyebrow { margin-bottom: var(--landing-section-gap); }
  .hero--dossier .scene-copy>.landing-button { margin-top: var(--landing-section-gap); min-height: 48px; padding: 12px 24px; font-size: clamp(16px,2.2dvh,25px); }
  .hero--dossier .hero-dossier { height: 100%; max-height: 620px; aspect-ratio: auto; }
  .hero-dossier__card { top: 15%; padding-top: clamp(36px,6dvh,64px); }
  .hero-dossier__heading { padding-bottom: clamp(12px,2dvh,26px); }
  .hero-dossier__rows>li { min-height: 0; padding-block: clamp(10px,1.8dvh,20px); }
  .people-scene .landing-button { margin-top: var(--landing-section-gap); }
  .people-scene { --portrait-width: clamp(72px,min(9.4vw,16dvh),220px); }

  .bento-section>h2 { margin-bottom: var(--landing-section-gap); }
  .bento-section>.bento-grid { flex: 1; min-height: 0; grid-template-rows: repeat(2,minmax(0,1fr)); }
  .bento-grid .bento-card { display: grid; grid-template-rows: minmax(0,1fr) auto auto; min-height: 0; padding: 0 20px clamp(12px,2dvh,28px); }
  .bento-grid .illustration { container-type: size; height: auto; min-height: 0; margin: 0 -20px clamp(8px,1.5dvh,20px); }
  .bento-grid .illustration>:where(:not(.app-strip):not(.notification)) { scale: min(1,calc(100cqh / 220px)); }
  .bento-grid .coordination-orbit .team-wheel { scale: min(1,calc(100cqh / 280px)); }
  .bento-grid .notifications { gap: 6px; }
  .bento-grid .notification { padding: 5px; }
  .bento-grid .notification img { width: 20px; }
  .bento-grid .notification b,.bento-grid .notification i { height: 4px; margin-block: 3px; }
  .bento-grid .app-strip { --app-step: calc(min(430px,160cqh) + 20px); }
  .bento-grid .app-strip img { width: min(430px,160cqh); flex-basis: min(430px,160cqh); }
  .bento-card h3 { margin-bottom: 8px; font-size: clamp(17px,2.3dvh,22px); }
  .bento-card p { font-size: clamp(13px,1.8dvh,15px); line-height: 1.45; }

  .features-section>.scene-copy { margin-bottom: var(--landing-section-gap); }
  .features-section>.features-showcase { flex: 1; min-height: 0; }
  .feature-tabs { min-height: 0; }
  .feature-tab { flex: 1; min-height: 0; padding: clamp(10px,1.8dvh,29px) 20px; align-content: center; }
  .feature-description { margin-top: 5px; font-size: clamp(12px,1.7dvh,14px); line-height: 1.4; }
  .feature-tab strong { font-size: clamp(14px,1.9dvh,16px); }
  .feature-stage { height: auto; min-height: 0; }
  .feature-window-bar { padding-block: clamp(8px,1.3dvh,17px); }
  .feature-panel figcaption { padding-block: clamp(8px,1.3dvh,16px); }
  .features-catalog-action { margin-top: var(--landing-section-gap); }
  .features-catalog-action .landing-button { min-height: 44px; padding-block: 10px; }

  .arc-section { gap: var(--landing-section-gap); }
  .arc-section .arc-panel { flex: 1; min-height: 0; aspect-ratio: auto; --connection-tile-size: clamp(56px,min(8vw,11dvh),132px); --connection-center-size: clamp(96px,13dvh,160px); }
  .arc-center-icon { margin-bottom: 12px; }
  .arc-panel .arc-description { margin-top: 8px; }

  .absence-heading { transform: none; }
  .absence-chart { margin-top: var(--landing-section-gap); }
  .absence-chart h3 { font-size: clamp(18px,2.2dvh,22px); }
  .absence-chart figcaption p { font-size: clamp(14px,1.8dvh,16px); margin-top: 4px; }
  .absence-plot { --absence-bar-height: clamp(26px,3.6dvh,40px); --absence-row-gap: clamp(14px,2dvh,28px); grid-template-rows: 40px var(--absence-bar-height) var(--absence-bar-height); }
  .absence-source { margin-top: 12px; }
  .absence-frictions { margin-top: var(--landing-section-gap); }
  .absence-frictions article { padding: clamp(14px,2dvh,30px) 20px; }
  .absence-friction-heading { min-height: 30px; margin-bottom: 10px; gap: 12px; }
  .absence-frictions h3 { font-size: clamp(15px,2dvh,18px); }
  .absence-frictions p { font-size: clamp(13px,1.8dvh,15px); line-height: 1.45; }

  .pricing-section { --pricing-control-height: clamp(56px,8dvh,96px); }
  .pricing-content { row-gap: var(--landing-section-gap); }
  .pricing-entry,.pricing-estimate { padding: clamp(20px,3dvh,44px); }
  .pricing-entry { gap: var(--landing-section-gap); }
  .pricing-field label { margin-bottom: 16px; }
  .pricing-field label,.pricing-estimate h3 { font-size: clamp(20px,2.8dvh,32px); }
  .pricing-total { margin-block: 16px 20px; }
  .pricing-total output { font-size: clamp(56px,9dvh,112px); }
  .pricing-details { padding-top: var(--landing-section-gap); }
  .pricing-details dt,.pricing-total>span { font-size: clamp(17px,2.2dvh,24px); }
  .pricing-details dd { margin-top: 8px; font-size: clamp(28px,4dvh,44px); }
  .pricing-estimate .pricing-demo { height: clamp(48px,6dvh,84px); font-size: clamp(16px,2dvh,22px); }
}
@media(min-width:851px) and (max-height:900px) {
  .feature-tab-icon,.feature-tab[aria-selected=true] .feature-tab-icon { width: 26px; height: 26px; }
}

/* Collaborators: a leading message beside four independently turning portraits. */
.people-scene.people-scene--cards {
  padding-inline: var(--landing-content-gutter);
  background: #eff4f1;
  border: 0;
}
.people-layout {
  display: grid;
  grid-template-columns: minmax(0,1.55fr) minmax(0,1fr);
  align-items: center;
  gap: clamp(32px,5vw,96px);
  width: 100%;
  max-width: var(--landing-content-width);
  margin-inline: auto;
}
.people-scene--cards .scene-copy { width: 100%; max-width: none; margin: 0; transform: none; text-align: left; }
.people-scene--cards h2 { max-width: 14ch; font-size: clamp(40px,min(5.5vw,10.5dvh),96px); line-height: 1.04; font-weight: 700; letter-spacing: -.04em; text-wrap: balance; }
.people-scene--cards .scene-copy>p:not(.landing-eyebrow) { max-width: 850px; margin: clamp(24px,4dvh,44px) 0 0; font-size: clamp(17px,min(1.5vw,2.8dvh),26px); line-height: 1.5; }
.people-scene--cards .landing-button { margin-top: clamp(24px,4dvh,40px); }
.people-scene--cards .people-portraits {
  --portrait-card-width: clamp(96px,min(9.8vw,20dvh),196px);
  --portrait-column-gap: clamp(18px,1.85vw,32px);
  --portrait-row-gap: clamp(14px,1.37vw,24px);
  --portrait-stagger: calc(var(--portrait-card-width) * .35);
  position: relative;
  inset: auto;
  display: grid;
  grid-template-columns: repeat(2,var(--portrait-card-width));
  gap: var(--portrait-row-gap) var(--portrait-column-gap);
  justify-content: center;
  width: max-content;
  max-width: 100%;
  margin-inline: clamp(16px,3.4vw,60px) 0;
  translate: 0 clamp(8px,.9vw,16px);
  padding-bottom: var(--portrait-stagger);
  overflow: visible;
  pointer-events: auto;
}
.portrait-card { width: var(--portrait-card-width); aspect-ratio: .8; perspective: 1100px; }
.portrait-card:nth-child(even) { position: relative; top: var(--portrait-stagger); }
.portrait-card__turn { position: relative; width: 100%; height: 100%; transform-style: preserve-3d; border-radius: 10px; }
.portrait-card__turn>img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: inherit; backface-visibility: hidden; }
.portrait-card__turn>img+img { transform: rotateY(180deg); }
.portrait-card.is-turning .portrait-card__turn { will-change: transform; }
@media(max-width:850px) {
  .people-scene.people-scene--cards { padding-block: 48px; }
  .people-layout { grid-template-columns: minmax(0,1fr); gap: 40px; max-width: 650px; }
  .people-scene--cards h2 { font-size: clamp(36px,7vw,56px); }
  .people-scene--cards .people-portraits { --portrait-card-width: clamp(110px,26vw,170px); --portrait-column-gap: 20px; --portrait-row-gap: 16px; --portrait-stagger: 32px; margin-inline: auto; translate: none; }
}
@media(max-width:500px) {
  .people-scene.people-scene--cards { padding-inline: 24px; }
  .people-scene--cards h2 { font-size: clamp(32px,8.5vw,42px); }
  .people-scene--cards .scene-copy>p:not(.landing-eyebrow) { font-size: 16px; }
}
