/* Corporate refinements, supplied photography and accessible motion. */
.brand img,.footer img{height:auto;aspect-ratio:auto;object-fit:contain}
.hero h1{letter-spacing:-.025em!important;word-spacing:.035em}.skip-link{position:fixed;top:8px;left:8px;padding:12px;background:#fff;color:#061954;z-index:30;transform:translateY(-150%)}.skip-link:focus{transform:none}.footer .footer-heading{font-size:1rem;color:#fff;margin:0 0 11px}.technology-strip .technology-track{display:flex;overflow:hidden;gap:0;padding:5px 0 13px;scrollbar-width:none}.technology-group{display:flex;gap:32px;flex-shrink:0;padding-right:32px;align-items:center}.technology-track.auto-scroll .technology-group{animation:tech-scroll 38s linear infinite}.technology-track.paused .technology-group,.technology-track:hover .technology-group{animation-play-state:paused}.strip-heading .carousel-toggle{width:auto;height:auto;padding:6px 12px;border-radius:5px;font:inherit;font-size:.75rem}.technology-track::-webkit-scrollbar{display:none}@keyframes tech-scroll{to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.technology-group{flex-wrap:wrap;gap:18px;flex-shrink:1;padding:0}.carousel-toggle{display:none}}
.renavego-logo{background:#061954;padding:10px;border-radius:5px}
:root{--muted:#53617a}body{font-family:Inter,"Segoe UI",Arial,sans-serif}section{scroll-margin-top:85px}.wrap{max-width:1240px}.title{letter-spacing:-.045em}.lead{line-height:1.8}.eyebrow{font-size:.78rem}.nav{transition:box-shadow .25s,background .25s}.nav.scrolled{background:#ffffffed;box-shadow:0 5px 25px #0619540a}.nav .brand{transition:transform .25s}.nav.scrolled .brand{transform:scale(.94);transform-origin:left}.photo{margin:0;overflow:hidden;border-radius:16px;position:relative;background:#e7edf7}.photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s}.photo:hover img{transform:scale(1.018)}.hero-grid{gap:40px;grid-template-columns:1fr 1.05fr}.hero h1{font-size:clamp(2.8rem,5.2vw,4.9rem);line-height:1.05}.hero-photo{background:none;height:510px;min-height:0}.hero-photo:after{display:none}.hero-photo img{object-position:55% center}.technology-strip{padding:25px 0;background:#fff;border-block:1px solid var(--line)}.strip-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.strip-heading button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);cursor:pointer}.technology-track{display:flex;overflow:auto;gap:32px;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:5px 0 13px}.technology-track span{white-space:nowrap;scroll-snap-align:start;color:#53617a;font-weight:650}.about .two{grid-template-columns:1.1fr .9fr;gap:45px}.about-photo{height:640px}.about-photo img{object-position:54% center}.stats{gap:14px}.stat{padding:21px}.stat p{font-size:.9rem;color:var(--muted);margin:8px 0 0}.stat b{font-size:1rem}.years{display:block;font-size:2.5rem;line-height:1.2;color:var(--navy);letter-spacing:-.04em}.line-icon{width:32px;height:32px;display:block;color:var(--blue);margin-bottom:17px;transition:transform .25s}.stat:hover .line-icon,.service:hover .line-icon{transform:translateY(-2px)}.headrow{display:block;max-width:860px}.headrow .lead{max-width:780px}.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.product{padding:24px;display:flex;flex-direction:column}.product p{font-size:.94rem;line-height:1.7}.product a{margin-top:auto;padding-top:24px;font-size:.88rem;overflow-wrap:anywhere}.product-logo{height:52px;max-width:170px;object-fit:contain;object-position:left center}.product h3{font-size:1.25rem}.ecosystem-photo{margin-top:32px;aspect-ratio:1672/941}.section-subtitle{font-size:1.25rem;margin:20px 0 0}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service{padding:24px;border:1px solid var(--line);border-radius:12px;transition:transform .25s,border-color .25s,box-shadow .25s}.service h3{font-size:1.13rem;color:var(--navy);margin:0 0 10px}.service p{font-size:1rem;line-height:1.65}.service:hover,.stat:hover{transform:translateY(-4px);border-color:#afbed9;box-shadow:0 14px 30px #06195409}.services-photo{margin-top:38px;height:480px}.services-photo img{object-position:center 53%}.photo-caption{display:flex;gap:30px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0 22px}.photo-caption h3{font-size:1.5rem;color:var(--navy)}.photo-caption p{color:var(--muted)}.work{background:#061954;color:#fff}.work .title{color:#fff}.work .eyebrow{color:#d6e2fb}.work .lead{color:#c6d4ef;max-width:770px}.timeline{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:0;margin:55px 0 0;position:relative;gap:0}.timeline:before{content:"";position:absolute;top:45px;left:6px;right:6px;height:1px;background:#536fa9;transform-origin:left;transition:transform 1.2s}.step{position:relative;padding:0 20px 0 0;outline-offset:8px}.step-number{font-size:.88rem;letter-spacing:.09em;color:#ffb600}.step-dot{display:block;width:11px;height:11px;background:#8096bf;border:2px solid #061954;box-shadow:0 0 0 1px #8096bf;border-radius:50%;margin:20px 0 26px;transition:background .25s,box-shadow .25s}.step h3{font-size:1rem;font-weight:650}.step-description{font-size:.875rem;color:#b8c9e9;transition:color .25s}.step-description b{font-weight:550;display:block;line-height:1.5}.step-description p{line-height:1.65}.step:hover .step-dot,.step:focus .step-dot{background:#ffb600;box-shadow:0 0 0 4px #ffb60025}.step:hover .step-description,.step:focus .step-description{color:#fff}.tech{background:#fff}.tech-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:25px;margin-top:42px}.tech-group{border-top:1px solid var(--line);padding-top:15px}.tech-group h3{font-size:1rem;margin:0 0 22px;color:var(--navy)}.tech-item{display:flex;align-items:center;gap:12px;margin:18px 0;font-size:.95rem}.tech-item img{object-fit:contain}.case-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.case,.case:nth-child(2),.case:nth-child(3){min-height:0;background:#fff;color:var(--ink);padding:27px;border:1px solid var(--line);transition:transform .25s,border-color .25s,background .25s;justify-content:flex-start}.case-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.case-top .line-icon{width:42px;height:42px;margin:0}.case-top>span{font-size:2rem;font-weight:600;color:#bac4d7;transition:color .25s}.case h3{font-size:1.4rem;line-height:1.28;letter-spacing:-.035em;margin:14px 0}.case p{font-size:.98rem;line-height:1.75;color:var(--muted);opacity:1}.case small{font-size:.75rem;line-height:1.5;color:var(--blue)}.case:hover{transform:translateY(-4px);border-color:#93a9d3;background:#fbfcff}.case:hover .case-top>span{color:#b47800}.tags{display:flex;gap:6px;flex-wrap:wrap;list-style:none;margin:22px 0;padding:0}.tags li{border:1px solid #e1e7f1;padding:4px 8px;border-radius:5px;font-size:.75rem;color:#586982}.case-link{padding-top:20px;margin-top:auto;border-top:1px solid var(--line);font-size:.9rem;font-weight:650;color:var(--blue)}.case-link span{display:inline-block;transition:transform .25s}.case:hover .case-link span{transform:translateX(4px)}.different .two{gap:45px}.different-photo{height:570px}.different-photo img{object-position:65% center}.difference{padding:20px 0 20px 45px;border:0;border-bottom:1px solid var(--line);border-radius:0}.difference:before{display:none}.difference>span{position:absolute;left:0;top:23px;font-size:.82rem;color:#7a8ba7}.difference h3{font-size:1.05rem;margin:0 0 10px;color:var(--navy)}.difference p{font-size:1rem;color:var(--muted);margin:0;line-height:1.7}.cta{position:relative;isolation:isolate;overflow:hidden}.cta:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,#061954,#123475,#061954);background-size:180% 180%;animation:ambient 18s ease-in-out infinite alternate}.btn{transition:transform .25s,background .25s,box-shadow .25s}.btn:hover{box-shadow:0 9px 20px #06195418}.footer img{background:none}.reveal{transition:opacity .6s,transform .6s;transition-delay:var(--delay,0ms)}.motion-ready .reveal:not(.seen){opacity:0;transform:translateY(18px)}.motion-ready .timeline:not(.seen):before{transform:scaleX(0)}.stat{transition:transform .25s,border-color .25s,box-shadow .25s}.footer a{font-size:.9rem}.nav .links{font-size:.9rem}.nav a:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #b7830b;outline-offset:5px}@keyframes ambient{to{background-position:100% 100%}}
@media(max-width:1050px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:35px}.timeline:before{display:none}.step{border-top:1px solid #536fa9;padding-top:20px}.step-dot{display:none}.tech-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.case-grid{gap:12px}.case{padding:22px}}
@media(max-width:800px){.hero-grid,.about .two,.different .two{grid-template-columns:1fr}.hero-photo{height:auto;aspect-ratio:3/2}.about-photo{height:auto;aspect-ratio:3/2}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-grid{grid-template-columns:1fr}.case-main{grid-column:auto}.different-photo{height:auto;aspect-ratio:1.65}.services-photo{height:auto;aspect-ratio:3/2}.photo-caption{display:block}.photo-caption h3{margin-bottom:0}.case h3{max-width:650px}}
@media(max-width:520px){.products,.service-grid,.stats{grid-template-columns:1fr}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.timeline{display:block;margin-left:6px}.step{border:0;border-left:1px solid #536fa9;padding:0 0 25px 30px}.step-dot{display:block;position:absolute;left:-6px;top:7px;margin:0}.step h3{margin-top:5px}.step-description{font-size:.95rem}.hero h1{font-size:2.75rem}.hero{padding:55px 0}.nav .btn{padding:10px 12px;font-size:.8rem}.photo-caption{padding-top:10px}.technology-track{gap:25px}.title{font-size:2.25rem}.ecosystem-photo{border-radius:10px}.work .lead{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal:not(.seen){opacity:1;transform:none}.motion-ready .timeline:not(.seen):before{transform:none}}
