@font-face{font-family:'Helvetica Neue Local';src:url('./assets/fonts/HelveticaNeue-Roman.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:'Helvetica Neue Local';src:url('./assets/fonts/HelveticaNeue-Medium.otf') format('opentype');font-weight:500 700;font-display:swap}
@font-face{font-family:'Helvetica Neue Local';src:url('./assets/fonts/HelveticaNeue-Light.otf') format('opentype');font-weight:300;font-display:swap}
:root{color-scheme:dark;background:#000000;color:#fff6e8;font-family:'Helvetica Neue Local',Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0}body{background:#000000}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:2px solid #72caff;outline-offset:5px}
.rec25{position:relative;background:#000000;isolation:isolate;--rec25-title-opacity:1;--rec25-entry:1;--rec25-visual-opacity:1;--rec25-exit:0}
.rec25-stage{position:relative;height:max(860px,100svh);max-height:1180px;overflow:clip}
.rec25-scene{position:absolute;inset:0;opacity:var(--rec25-visibility,1)}
.rec25-flow,.rec25-art,.rec25-particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.rec25-flow{z-index:0;opacity:var(--rec25-visual-opacity);mask-image:linear-gradient(0deg,transparent,black 8%,black 90%,transparent)}
.rec25-copy{position:absolute;z-index:8;left:4.15%;top:50%;width:31.5%;max-width:610px;transform:translateY(-50%)}
.rec25-title{margin:0 0 24px;color:#fffaf3;font-family:'Times New Roman',Times,serif;font-size:clamp(76px,6.6vw,140px);font-weight:400;font-style:italic;letter-spacing:-.054em;line-height:.97;text-wrap:balance}
.rec25-paragraphs{max-width:510px}
.rec25-paragraphs p{margin:0;font-size:clamp(19px,1.52vw,29px);line-height:1.38;font-weight:300;color:#d4d4d4;letter-spacing:-.012em}
.rec25-paragraphs p+p{margin-top:25px}
.rec25-art{z-index:2;opacity:var(--rec25-visual-opacity);transform:translateY(var(--rec25-art-y,0px));will-change:transform,opacity}
.rec25-browser{position:absolute;z-index:4;left:56.8%;top:20%;width:39.8%;border:1px solid #29708b;border-radius:15px;padding:8px 9px 10px;background:linear-gradient(135deg,#173044 0%,#03111e 17%,#00070c 85%,#134759 100%);box-shadow:-3px 1px 22px #06568624,0 34px 58px #000c;transform:perspective(1800px) rotateY(-10deg) rotateZ(.6deg);transform-origin:left center;pointer-events:auto;container-type:inline-size}
.rec25-browser:before{content:'';position:absolute;inset:1px;border:1px solid #456a753c;border-radius:13px;pointer-events:none}
.rec25-chrome{position:relative;display:flex;height:5.6cqw;align-items:center;gap:1.1cqw;padding:0 1.7cqw .7cqw;color:#7695a7;font-size:1.5cqw}
.rec25-chrome>i{height:1.2cqw;width:1.2cqw;background:#7792a5;opacity:.78;border-radius:50%}.rec25-chrome>i:first-child{background:#ed6473}.rec25-chrome>i:nth-child(2){background:#7fd5bb}.rec25-chrome>i:nth-child(3){background:#8295bc}
.rec25-chrome>span{margin-left:auto;font-size:2.6cqw}.rec25-address{position:absolute;left:24%;width:53%;height:2.6cqw;background:#24455942;border:1px solid #50738820;border-radius:4px;display:flex;gap:1cqw;align-items:center;justify-content:center;color:#96a6b0;font-size:1.3cqw;letter-spacing:.04em}
.rec25-address svg{width:1.4cqw;height:1.4cqw;fill:none;stroke:currentColor;stroke-width:1}
.rec25-demo{overflow:hidden;border-radius:5px;background:#f4f1ec;color:#202321;box-shadow:0 0 0 1px #ffffff25;min-height:89cqw}
.rec25-demo-nav{height:9.8cqw;display:flex;align-items:center;padding:0 4.3cqw;gap:2.6cqw;background:#fbfaf7;border-bottom:1px solid #c8c3b557}
.rec25-wordmark{font-family:'Times New Roman',serif;font-size:3.6cqw;letter-spacing:-.09em;white-space:nowrap}.rec25-wordmark span{font:1.1cqw Arial;vertical-align:super;margin-left:.6cqw}
.rec25-demo-nav nav{display:flex;justify-content:center;gap:2.4cqw;margin-left:auto}.rec25-demo-nav button{border:0;background:none;color:#242724;padding:1cqw 0;font-size:1.55cqw;cursor:pointer;white-space:nowrap}
.rec25-demo-nav .rec25-demo-cta{margin-left:1.2cqw;padding:1.5cqw 1.8cqw;color:#fff;background:#0b1c22;font-size:1.5cqw;border-radius:3px}
.rec25-demo-hero{height:49cqw;position:relative;overflow:hidden}
.rec25-demo-hero>img{width:100%;height:100%;object-fit:cover;object-position:58% 67%}
.rec25-demo-shade{position:absolute;inset:0;background:linear-gradient(90deg,#161712a8 0%,#26221856 38%,transparent 78%)}
.rec25-demo-intro{position:absolute;left:6.5cqw;top:11.3cqw;color:#fffaf2}
.rec25-demo-intro h3{font-family:'Times New Roman',Times,serif;font-weight:400;font-size:5.6cqw;line-height:1.02;letter-spacing:-.04em;margin:0 0 2.3cqw}
.rec25-demo-intro p{font-size:1.66cqw;line-height:1.4;margin:0 0 2.3cqw;color:#efeee7}
.rec25-demo-intro button{border:1px solid #34443e55;border-radius:3px;background:#0b1c22;padding:1.8cqw 2.5cqw;font-size:1.7cqw;color:#fff;cursor:pointer}.rec25-demo-intro button span{margin-left:2cqw;font-size:2.2cqw}
.rec25-demo-services{padding:4.2cqw 6cqw 5.2cqw}.rec25-service-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.8cqw}.rec25-service-heading h4{font-family:'Times New Roman',serif;font-size:3.6cqw;font-weight:400;letter-spacing:-.045em;margin:0}.rec25-service-heading button{border:0;background:none;color:#202321;cursor:pointer;font-size:1.4cqw}.rec25-service-heading button span{margin-left:1cqw}
.rec25-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8cqw}.rec25-service{display:block;text-align:left;padding:0;border:1px solid #d5d0c7;border-radius:4px;overflow:hidden;background:#fbfaf7;cursor:pointer;color:#262823;min-width:0}.rec25-service img{display:block;width:100%;height:14cqw;object-fit:cover}.rec25-service img.rec25-detail-image{object-position:100% 38%;object-fit:cover;transform:scale(1);filter:brightness(1.13)}.rec25-service strong{display:block;margin:1.6cqw 1.2cqw 1cqw;font-size:1.66cqw;font-weight:500;white-space:nowrap}.rec25-service>span{display:block;font-size:1.24cqw;margin:0 1.2cqw 1.8cqw;color:#6b6b63;white-space:nowrap;letter-spacing:-.03em}
.rec25-demo button:hover{filter:brightness(1.08)}.rec25-service:hover img{filter:brightness(1.09)}.rec25-mobile-expand{display:none}
.rec25-absorption{position:absolute;left:-2px;top:51%;height:8%;width:3px;border-radius:50%;background:#79d4fa;box-shadow:0 0 5px #4cadff,0 0 13px #1676dc;opacity:var(--rec25-absorb,.3);pointer-events:none}
.rec25-secondary{position:absolute;inset:0;z-index:1}
.rec25-card{position:absolute;top:0;left:0;width:240px;height:125px;border:1px solid #7babc2;border-radius:9px;overflow:hidden;backface-visibility:hidden;will-change:transform,opacity;color:#132244;background:linear-gradient(128deg,#f5f6fd,#d9e5f0);box-shadow:0 5px 14px #00255b65;display:flex;gap:15px;padding:17px;font-family:'Helvetica Neue Local',sans-serif;transform-origin:center center}
.rec25-card-photo{object-fit:cover;border-radius:5px;width:86px;height:100%}.rec25-card-content{flex:1;min-width:0}.rec25-card h3{font-weight:500;letter-spacing:-.045em;font-size:22px;line-height:1;margin:0 0 15px}.rec25-card p{font-size:12px;margin:8px 0 0;white-space:nowrap;letter-spacing:-.025em}.rec25-card p:before{content:'✓';font-size:11px;color:#fff;background:#213c63;border-radius:3px;padding:1px 3px;margin-right:6px}.rec25-card-icon{font-family:Arial;font-size:31px;width:36px;text-align:center;font-weight:400;color:#1d345b}.rec25-card-lines{display:grid;gap:9px;width:97px;margin-top:5px}.rec25-card-lines i{height:5px;background:#869db2;opacity:.75}.rec25-card-lines i:nth-child(2){width:82%}.rec25-card-dark{background:linear-gradient(120deg,#092039,#03111c);color:#f5f4ee;border-color:#256484}.rec25-card-dark .rec25-card-icon{color:#c1d5ee}.rec25-card-dark .rec25-card-lines i{background:#7385a9}.rec25-card-mini{padding:8px;width:170px;height:102px}.rec25-card-mini .rec25-card-photo{width:100%;height:100%;border-radius:3px}.rec25-card-mini .rec25-card-content{display:none}
.rec25-protagonist{position:absolute;inset:0;z-index:5;pointer-events:none}.rec25-protagonist .rec25-card{width:300px;height:154px;border-color:#a9cef2;box-shadow:0 2px 17px #174cff3a,0 0 1px #f5faff}.rec25-protagonist .rec25-card-content{min-width:150px}.rec25-protagonist .rec25-card h3{font-size:25px;margin-bottom:15px}.rec25-protagonist .rec25-card p{font-size:12px}.rec25-protagonist .rec25-card-photo{width:100px}.rec25-card-lines span{font-size:12px;white-space:nowrap;letter-spacing:-.02em}.rec25-card-lines{width:auto;gap:8px}
.rec25-dialog{padding:0;width:min(1000px,92vw);max-height:90svh;overflow:auto;border:1px solid #60859b;border-radius:14px;background:#f5f1e9;color:#1c282b}.rec25-dialog::backdrop{background:#000c;backdrop-filter:blur(9px)}.rec25-dialog-body{position:relative}.rec25-dialog-close{position:absolute;right:18px;top:18px;z-index:2;border:1px solid #d2d9d6;border-radius:100px;background:#f7f4ee;padding:11px 17px;color:#172227;cursor:pointer;box-shadow:0 3px 20px #0002}.rec25-dialog-close span{font-size:20px;margin-left:20px}.rec25-dialog-photo img{width:100%;height:clamp(230px,38vh,430px);object-fit:cover;display:block}.rec25-dialog-content{padding:30px 40px 40px}.rec25-dialog-kind{font-size:13px;color:#66756b;margin:0 0 20px}.rec25-dialog-content h2{font:italic 46px/1 'Times New Roman',serif;max-width:700px;margin:0 0 22px;letter-spacing:-.04em}.rec25-dialog-description{font-size:18px;line-height:1.5;max-width:680px}.rec25-dialog-links a{display:inline-flex;color:#f5f0e8;background:#10262a;text-decoration:none;padding:14px 20px;border-radius:30px;gap:30px;margin-top:10px}
@media(min-width:1800px){.rec25-browser{width:38%;left:56.7%;top:17%}.rec25-copy{left:5.5%}}
@media(max-width:1000px) and (min-width:701px){.rec25-title{font-size:7vw}.rec25-copy{width:34%;left:4%}.rec25-paragraphs p{font-size:18px}.rec25-browser{left:56%;width:41%}}
@media(max-width:700px){
 .rec25{height:var(--rec25-story-height,calc(100svh + 1750px));--rec25-entry:0;--rec25-visual-opacity:0;--rec25-title-scale:1;--rec25-title-y:0px;--rec25-title-top:34%;--rec25-problem-opacity:0;--rec25-solution-opacity:0}
 .rec25-stage{height:100svh;min-height:640px;max-height:none;position:sticky;top:0}
 .rec25-copy{left:0;top:0;width:100%;height:100%;max-width:none;transform:none;pointer-events:none}
 .rec25-title{position:absolute;top:var(--rec25-title-top);left:2%;width:96%;text-align:center;transform:translateY(var(--rec25-title-y)) scale(var(--rec25-title-scale));transform-origin:50% 0;opacity:var(--rec25-title-opacity);font-size:clamp(48px,13.3vw,63px);line-height:.98;letter-spacing:-.046em;margin:0;will-change:transform,opacity}
 .rec25-title .rec25-line{display:block;white-space:nowrap}
 .rec25-title{left:0;width:100%}
 .rec25-desktop-break{display:none}
 .rec25-paragraphs{position:absolute;top:24%;left:8%;width:84%;height:143px;max-width:none}
 .rec25-paragraphs p{position:absolute;inset:0;margin:0!important;text-align:center;font-size:clamp(16px,4.35vw,19px);line-height:1.38;letter-spacing:-.005em}
 .rec25-problem{opacity:var(--rec25-problem-opacity);filter:blur(var(--rec25-problem-blur,0px))}
 .rec25-solution{opacity:var(--rec25-solution-opacity);filter:blur(var(--rec25-solution-blur,0px))}
 .rec25-browser{left:14%;top:55%;width:80%;padding:4px 5px 6px;border-radius:9px;transform:perspective(1000px) rotateY(-7deg) rotateZ(.7deg);box-shadow:0 22px 38px #000b,-3px 0 18px #0a5da131}
 .rec25-browser:before{border-radius:7px}.rec25-chrome{height:6.6cqw}.rec25-demo-nav{height:11cqw}.rec25-demo-hero{height:52cqw}.rec25-demo-services{padding:5cqw}.rec25-demo-intro h3{font-size:6.2cqw}.rec25-demo-intro p{font-size:1.9cqw}.rec25-demo-intro button{font-size:1.9cqw}.rec25-demo{min-height:94cqw}
 .rec25-protagonist .rec25-card{width:275px;height:143px}.rec25-protagonist .rec25-card-content{min-width:135px}.rec25-protagonist .rec25-card h3{font-size:23px}.rec25-protagonist .rec25-card p{font-size:11px}.rec25-protagonist .rec25-card-photo{width:89px}
 .rec25-flow{mask-image:linear-gradient(0deg,transparent,black 7%,black 57%,transparent 70%)}
 .rec25-dialog-content{padding:26px}.rec25-dialog-content h2{font-size:37px}.rec25-dialog-description{font-size:17px}.rec25-mobile-expand{display:block;position:absolute;inset:0;z-index:8;width:100%;height:100%;border:0;background:transparent;cursor:pointer;border-radius:9px}
}
@media(max-width:350px){.rec25-paragraphs{top:24.7%;left:7%;width:86%}.rec25-browser{top:57%;left:13%;width:81%}.rec25-title{font-size:48px}}
@media(max-width:700px) and (max-height:740px){.rec25-browser{top:54%;width:74%;left:18%}.rec25-paragraphs{top:23%}.rec25-paragraphs p{font-size:16px}.rec25-title{font-size:48px}}
@media(max-width:350px){.rec25-paragraphs{top:26.4%}.rec25-browser{top:57%;width:78%;left:15%}}
@media(max-width:700px) and (max-height:680px){.rec25-browser{top:56%;width:65%;left:28%}}
@media(prefers-reduced-motion:reduce){
 .rec25{height:auto!important}.rec25-stage{position:relative;height:max(800px,100svh);min-height:800px}.rec25-art{transform:none!important;opacity:1!important}.rec25-flow{opacity:.65!important}.rec25-title{opacity:1!important}.rec25-browser{transform:perspective(1800px) rotateY(-7deg)}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){
 .rec25-stage{height:1080px;min-height:0}.rec25-title{top:72px!important;transform:none!important;font-size:48px}.rec25-paragraphs{top:215px;height:auto}.rec25-paragraphs p{position:static;opacity:1!important;filter:none!important}.rec25-paragraphs p+p{margin-top:22px!important}.rec25-browser{top:53%;width:87%;left:8%}.rec25-protagonist{display:none}
}
/* V2: black stage; light belongs to the threads and the absorption event. */
.rec25{--rec25-event-light:0}
.rec25-flow{transform:translateY(var(--rec25-art-y,0px))}
.rec25-browser{left:58.4%;width:37%;top:21%;border-color:rgba(34,104,146,calc(.52 + var(--rec25-event-light)*.45));box-shadow: -7px 0 calc(7px + var(--rec25-event-light)*33px) rgba(0,116,242,calc(.08 + var(--rec25-event-light)*.43)),0 32px 62px #000b}
.rec25-browser::before{border-color:rgba(77,166,215,calc(.13 + var(--rec25-event-light)*.35))}
.rec25-browser::after{content:'';position:absolute;pointer-events:none;left:-2px;top:30%;width:3px;height:44%;border-radius:50%;background:linear-gradient(transparent,#b5eaff 48%,#38a9ff 54%,transparent);box-shadow:-3px 0 18px #279cff, -9px 0 30px #0069ef;opacity:var(--rec25-event-light);filter:blur(.8px)}
.rec25-absorption{height:11%;top:49%;background:#bce9ff;box-shadow:-2px 0 9px #2bafff,-8px 0 21px #076fe5}
@media(max-width:1000px) and (min-width:701px){.rec25-browser{left:56.8%;width:40%;top:23%}}
@media(max-width:700px){.rec25-browser{left:16%;width:78%;top:55%}.rec25-flow{mask-image:linear-gradient(0deg,transparent,black 5%,black 58%,transparent 72%)}}
@media(max-width:700px) and (max-height:740px){.rec25-browser{top:54%;width:74%;left:18%}}
@media(max-width:350px){.rec25-browser{top:57%;width:78%;left:15%}}
@media(max-width:700px) and (max-height:680px){.rec25-browser{top:56%;width:65%;left:28%}}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.rec25-browser{top:53%;width:87%;left:8%}}
/* V4: only the animated scene is fitted; desktop copy is a full-size stage sibling. */
.rec25-copy{opacity:var(--rec25-visibility,1)}
@media(min-width:701px){
 .rec25-protagonist .rec25-card{width:340px;height:160px}
 .rec25-protagonist .rec25-card h3{font-size:28px}
 .rec25-protagonist .rec25-card p,.rec25-protagonist .rec25-card-lines span{font-size:14.5px}
 .rec25-stage{height:100svh;min-height:0;max-height:none}
 .rec25-scene{inset:auto;left:50%;top:50%;width:var(--rec25-scene-width,1440px);height:var(--rec25-scene-height,820px);transform:translate(-50%,-50%) scale(var(--rec25-scene-scale,1));transform-origin:center center}
 .rec25-browser{left:58.4%;width:37%;top:21%}
 .rec25-flow{mask-image:none}
}
@media(max-width:700px){
 .rec25-browser{left:11%;width:78%;transform:rotateY(-5deg);transform-origin:center center;border-color:#22689284;box-shadow:0 -8px calc(7px + var(--rec25-event-light)*33px) rgba(0,116,242,calc(.08 + var(--rec25-event-light)*.43)),0 22px 38px #000b}
 .rec25-browser::before{border-color:#4da6d721}
 .rec25-browser::after{left:30%;top:-2px;width:40%;height:3px;background:linear-gradient(90deg,transparent,#b5eaff 48%,#38a9ff 54%,transparent);box-shadow:0 -3px 18px #279cff,0 -9px 30px #0069ef}
 .rec25-absorption{left:46%;top:-2px;width:8%;height:3px;box-shadow:0 -2px 9px #2bafff,0 -8px 21px #076fe5}
}
@media(max-width:700px) and (max-height:740px){.rec25-browser{left:13%;width:74%}}
@media(max-width:350px){.rec25-browser{left:11%;width:78%}}
@media(max-width:700px) and (max-height:680px){.rec25-browser{left:17.5%;width:65%}}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.rec25-browser{left:6.5%;width:87%}}
