/* ROVEX website: shared black/red system, October 2026. Modular keeps its own scoped brand. */
body.rx-site{--bg:#111214;--bg-alt:#1b1c1f;--bg-soft:#242529;--accent:#c53033;--accent-soft:rgba(197,48,51,.16);--text-main:#f7f7f8;--text-muted:#c0c2c7;--text-soft:#a5a8af;--border:#35373c;--border-strong:#565960;--input-bg:#17181b;--input-border:#62666e;--header-height:86px;--radius-lg:18px;--radius-md:12px;--shadow:0 12px 35px #0002;background:#111214;color:var(--text-main);font-family:'Space Grotesk',Arial,sans-serif;font-size:16px;line-height:1.65;overflow-x:clip}
body.rx-site::before,body.rx-site::after,body.rx-site .page::before,body.rx-site .page::after{display:none!important}body.rx-site .hero-motion,body.rx-site .hero-streaks,body.rx-site .hero-excavator,body.rx-site .hero-surface{display:none!important}body.rx-site [hidden]{display:none!important}body.rx-site .page{width:100%;max-width:1440px;padding:0 clamp(20px,4vw,64px);margin:0 auto;min-height:100vh;isolation:isolate}body.rx-site main{min-width:0;flex:1}body.rx-site main:focus{outline:none}body.rx-site img,body.rx-site video{max-width:100%}body.rx-site a{color:inherit;text-underline-offset:4px}body.rx-site p{line-height:1.7}body.rx-site h1,body.rx-site h2,body.rx-site h3{font-family:'Space Grotesk',Arial,sans-serif;line-height:1.14;letter-spacing:-.035em;text-wrap:balance}body.rx-site h1{font-size:clamp(34px,4.6vw,64px)}body.rx-site h2{font-size:clamp(27px,3vw,40px)}body.rx-site h3{font-size:clamp(19px,1.7vw,24px)}body.rx-site p,body.rx-site li,body.rx-site h1,body.rx-site h2,body.rx-site h3,body.rx-site a{overflow-wrap:break-word}body.rx-site :is(button,input,select,textarea){font-family:inherit}body.rx-site :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ff898c;outline-offset:4px}body.rx-site :is(button,a,summary){touch-action:manipulation}body.rx-site .rx-skip{position:fixed;left:20px;top:-120px;z-index:2000;background:#fff;color:#17181a;border-radius:8px;padding:12px 18px;font-weight:700}body.rx-site .rx-skip:focus{top:12px}body.rx-site main [id]{scroll-margin-top:110px}
/* Shared header: four offers first, supporting pages behind More. */
body.rx-site .topbar{position:sticky;top:0;display:flex;align-items:center;gap:25px;min-height:86px;padding:15px 0;z-index:60;background:#090a0b;text-transform:none}body.rx-site .topbar::before{background:#090a0b;border-bottom:1px solid #2b2d31;backdrop-filter:none}body.rx-site .topbar .brand{flex:0 0 auto}body.rx-site .topbar .brand img{width:174px;height:auto;max-height:56px;object-fit:contain;filter:none}body.rx-site .topbar-energy .brand img{width:174px;height:auto;filter:none}body.rx-site .topbar>.nav{display:flex;flex:1;justify-content:flex-end;gap:clamp(12px,1.5vw,23px);margin:0;font-size:13px;font-weight:600;line-height:1.35}body.rx-site .nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;border-radius:0;white-space:nowrap;border:0;box-shadow:none;background:none;padding:0;color:#e0e1e5;position:relative}body.rx-site .topbar>.nav>a:not(.nav-cta)::after{content:'';position:absolute;bottom:4px;left:0;right:0;height:2px;background:#da3a3d;transform:scaleX(0);transition:transform .15s}body.rx-site .topbar>.nav>a:hover::after,body.rx-site .topbar>.nav>a[aria-current=page]::after{transform:scaleX(1)}body.rx-site .nav a:hover{color:#fff;background:none;box-shadow:none}body.rx-site .nav a.nav-cta{background:#c53033;color:#fff;padding:11px 16px;border-radius:8px;text-align:center;justify-content:center;max-width:200px;white-space:normal}body.rx-site .nav a.nav-cta:hover{background:#ac272b}body.rx-site .lang-switch{flex:0 0 auto;margin:0}body.rx-site .lang-switch select{height:44px;min-width:62px;border:1px solid #484a50;border-radius:8px;background:#151619;color:#fff;font-size:13px;padding:9px 10px;cursor:pointer}body.rx-site .rx-nav-more{position:relative}body.rx-site .rx-nav-more>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;color:#e0e1e5;font-size:13px;font-weight:600;white-space:nowrap}body.rx-site .rx-nav-more>summary::-webkit-details-marker{display:none}body.rx-site .rx-nav-more>summary::after{content:"";display:block;width:16px;height:16px;flex:0 0 16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px 16px no-repeat;transform:rotate(0deg)}body.rx-site .rx-nav-more[open]>summary::after{transform:rotate(180deg)}body.rx-site .rx-nav-more[open]>summary{color:#ff979a}body.rx-site .rx-nav-more-links{position:absolute;right:-20px;top:calc(100% + 8px);min-width:245px;padding:10px;background:#202125;border:1px solid #45474d;border-radius:12px;box-shadow:0 18px 40px #0006;display:grid;gap:2px}body.rx-site .rx-nav-more-links a{padding:10px 14px;min-height:44px;border-radius:6px;font-size:14px;font-weight:500}body.rx-site .rx-nav-more-links a:hover{background:#303136;color:#fff}body.rx-site .nav-toggle{display:none;flex:0 0 auto;align-items:center;justify-content:center;gap:11px;min-width:90px;min-height:44px;padding:10px 12px;border:1px solid #484a50;border-radius:8px;color:#fff;background:#17181b;font-size:13px;font-weight:600}body.rx-site .nav-toggle-icon{width:17px}body.rx-site .nav-toggle-icon::before,body.rx-site .nav-toggle-icon::after{width:17px}
/* Focus-managed mobile navigation. */
body.rx-site .mobile-nav{position:fixed;inset:0;z-index:1000;display:block;visibility:visible;pointer-events:auto}body.rx-site .mobile-nav[hidden]{display:none!important}body.rx-site .mobile-nav-overlay{inset:0;background:#0009;opacity:1}body.rx-site .mobile-nav-panel{position:absolute;top:0;right:0;bottom:0;transform:none;opacity:1;width:min(480px,100%);height:100dvh;max-height:100dvh;padding:25px clamp(22px,5vw,35px);background:#111214;border-left:1px solid #3c3e43;overflow:auto;overscroll-behavior:contain;box-shadow:-25px 0 80px #0005;display:block}body.rx-site .mobile-nav-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid #34363b}body.rx-site .mobile-nav-title{font-size:25px;font-weight:600;letter-spacing:-.025em;text-transform:none}body.rx-site .mobile-nav-close{min-width:44px;min-height:44px;width:44px;height:44px;background:#232428;border:1px solid #50535b;border-radius:50%}body.rx-site .mobile-nav-close::before,body.rx-site .mobile-nav-close::after{background:#fff}body.rx-site .mobile-nav-links .nav{display:flex;flex-direction:column;align-items:stretch;gap:4px;margin:0;width:100%;font-size:19px}body.rx-site .mobile-nav-links .nav>a{min-height:52px;padding:12px 13px;border-radius:8px;color:#fff;background:none;font-size:19px;font-weight:500;white-space:normal;box-shadow:none;border:0}body.rx-site .mobile-nav-links .nav>a[aria-current=page]{background:#312023;color:#ffb4b5}body.rx-site .mobile-nav-links .nav>.nav-cta{background:#c53033;max-width:none;margin-top:14px;font-size:16px;text-align:center;color:#fff;justify-content:center}body.rx-site .mobile-nav .rx-nav-more{margin-top:9px;padding-top:9px;border-top:1px solid #34363b}body.rx-site .mobile-nav .rx-nav-more>summary{min-height:44px;padding:8px 13px;font-size:13px;color:#aeb1b8;text-transform:uppercase;letter-spacing:.08em;justify-content:space-between}body.rx-site .mobile-nav .rx-nav-more-links{position:static;min-width:0;padding:0 0 0 10px;background:none;box-shadow:none;border:none;border-radius:0;grid-template-columns:1fr 1fr;gap:2px}body.rx-site .mobile-nav .rx-nav-more-links a{font-size:14px;font-weight:400;color:#d5d7dd;white-space:normal}body.rx-site .rx-menu-contact{border-top:1px solid #34363b;margin-top:24px;padding-top:20px;display:grid;gap:7px}body.rx-site .rx-menu-contact p{margin:0 0 3px;color:#aeb1b8;font-size:12px}body.rx-site .rx-menu-contact a{min-height:38px;display:flex;align-items:center;text-decoration:none;font-size:14px;color:#fff}body.rx-site.rx-menu-open .cookie-banner{visibility:hidden}body.rx-site.no-scroll{overflow:hidden}
/* Calm, legible content and predictable actions across older templates. */
body.rx-site .section{padding:65px 0;border-bottom:1px solid #292b30}body.rx-site .section.alt{background:#18191c;padding:40px;border:1px solid #35373c;border-radius:18px;margin:30px 0}body.rx-site .section-header{max-width:800px;margin-bottom:32px}body.rx-site .section-header h2{margin:10px 0 16px}body.rx-site .section-lede,body.rx-site .lede{font-size:17px;color:#c0c2c7;line-height:1.75}body.rx-site .eyebrow{font-size:12px;font-weight:700;letter-spacing:.13em;color:#ff8589;text-transform:uppercase}body.rx-site .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;line-height:1.5;text-align:center;text-decoration:none;box-shadow:none;transform:none;letter-spacing:0}body.rx-site .btn:hover{transform:none;box-shadow:none}body.rx-site .btn.primary{background:#c53033;border:1px solid #c53033;color:#fff}body.rx-site .btn.primary:hover{background:#ac272b;border-color:#ac272b}body.rx-site .btn.ghost{background:#242529;border:1px solid #5a5d64;color:#f3f3f5}body.rx-site .btn.ghost:hover{background:#32343a;border-color:#858892}body.rx-site .btn:disabled{opacity:.65;cursor:wait}body.rx-site .service-card,body.rx-site .value,body.rx-site .about-highlight,body.rx-site .process-step,body.rx-site .faq-item{background:#1d1e22;border:1px solid #3a3c43;box-shadow:none;border-radius:14px}body.rx-site .service-card:hover{transform:translateY(-3px);border-color:#b8494c;box-shadow:0 12px 24px #0002}body.rx-site .service-card p,body.rx-site .service-card li,body.rx-site .value p,body.rx-site .about-highlight p{color:#c1c4cb}body.rx-site .service-card.energy-card{background:#1d1e22;border-color:#3a3c43;box-shadow:none}body.rx-site .service-card.energy-card .service-icon{color:#ff8589;background:#c530331a}body.rx-site .service-icon{color:#ff8589;background:#c530331a;border:1px solid #81323844;border-radius:10px}body.rx-site .reveal{opacity:1;transform:none}body.rx-site .section.about{background:none;box-shadow:none}body.rx-site .section.about::before,body.rx-site .section.about::after{display:none}body.rx-site .project-card,body.rx-site .project-images,body.rx-site .hero-image{box-shadow:none}body.rx-site .project-card{border:1px solid #3a3c43;border-radius:16px;background:#1b1c20;overflow:hidden}body.rx-site .project-head{padding:20px}body.rx-site .project-head h3{margin:0 0 5px}body.rx-site .project-photo-link{display:block}body.rx-site .image-frame:focus-within{outline:3px solid #ff898c;outline-offset:2px}body.rx-site .service-page{padding-top:34px}body.rx-site .service-hero{margin-bottom:40px}body.rx-site .service-hero-card{background:#1c1d21;border:1px solid #3c3f45;box-shadow:none;padding:40px;border-radius:18px}body.rx-site .service-hero-card::after{display:none}body.rx-site .service-body{font-size:16px;line-height:1.75}body.rx-site .service-cta-card{background:#242125;border:1px solid #6b3438;box-shadow:none;border-radius:14px}body.rx-site .service-list li::before{background:#ff8589}body.rx-site .service-highlight{background:#242529;border-color:#3c3e45}body.rx-site .service-highlight-text{color:#c2c4ca}body.rx-site .service-columns>*{min-width:0}body.rx-site .legal{padding:45px 0 65px;max-width:100%;width:100%}body.rx-site .legal-card{background:#1b1c20;border:1px solid #3b3d44;border-radius:16px;box-shadow:none;max-width:100%;padding:clamp(22px,4vw,48px)}body.rx-site .legal-card p,body.rx-site .legal-card li{max-width:90ch;color:#c7c9cf}body.rx-site .legal-card a{color:#ff999c;text-decoration:underline}body.rx-site .legal-card h3{margin-top:35px}body.rx-site .legal-card ul{padding-left:22px}body.rx-site .faq-list details{border-color:#40434a}body.rx-site details summary{cursor:pointer;min-height:48px}body.rx-site .contact-form input,body.rx-site .contact-form textarea,body.rx-site .contact-form select{min-height:48px;border:1px solid #62666e;border-radius:8px;background:#17181b;color:#fff;font-size:16px;padding:12px 14px;max-width:100%;box-shadow:none}body.rx-site .contact-form label{font-size:14px;gap:8px;color:#d9dbe0}body.rx-site input::placeholder,body.rx-site textarea::placeholder{color:#9c9fa8;opacity:1}body.rx-site .form-status{padding:12px 0;font-size:14px;line-height:1.6}body.rx-site input[type=checkbox],body.rx-site input[type=radio]{accent-color:#c53033}body.rx-site .contact-form textarea{min-height:130px;resize:vertical}
/* Footer keeps all company/legal details and provides consistent service routes. */
body.rx-site :is(.footer,.ct-footer){margin-top:45px;padding:42px 0 30px;border-top:1px solid #41434a;background:none;color:#b7bac3;font-size:13px;line-height:1.8}body.rx-site .footer-grid{gap:35px;grid-template-columns:1.05fr .85fr 1.3fr}body.rx-site .footer-title{font-size:12px;color:#f1f2f4;letter-spacing:.08em;margin-bottom:15px}body.rx-site .footer-logo{width:155px;height:auto;margin-bottom:18px}body.rx-site .footer a,body.rx-site .ct-footer a{font-size:13px;color:#d5d7dc;text-decoration:none;min-height:34px;display:inline-flex;align-items:center;line-height:1.6}body.rx-site .footer a:hover,body.rx-site .ct-footer a:hover{color:#fff;text-decoration:underline}body.rx-site .footer-links{gap:4px}body.rx-site .rx-footer-services{display:flex;align-items:center;gap:15px 28px;flex-wrap:wrap;border-bottom:1px solid #34363d;padding-bottom:22px;margin-bottom:30px;width:100%;grid-column:1/-1}body.rx-site .rx-footer-services a{font-size:14px;min-height:44px}body.rx-site .rx-footer-services a:first-child{color:#fff;font-weight:600}body.rx-site .sv-languages{border-top:1px solid #34363d;padding-top:18px;margin-top:20px;display:flex;flex-wrap:wrap;gap:10px 24px;width:100%;grid-column:1/-1}body.rx-site .sv-languages a{min-height:40px}
/* Notices stay usable without competing floating controls. */
body.rx-site .cookie-banner{transform:none;left:24px;right:auto;bottom:24px;max-width:510px;width:calc(100% - 48px);border:1px solid #565960;border-radius:12px;background:#242529;box-shadow:0 12px 45px #0005;padding:18px 20px;z-index:120;gap:18px}body.rx-site .cookie-banner p{font-size:13px;line-height:1.65;margin:0;color:#e0e1e6}body.rx-site .cookie-banner .btn{min-height:44px;font-size:13px;flex-shrink:0}body.rx-site #language-modal:not(.is-visible){display:none}body.rx-site .lightbox{z-index:1300}body.rx-site .lightbox-close{min-width:44px;min-height:44px}body.rx-site .container-launch-notice{border-radius:10px;box-shadow:none;font-size:14px;line-height:1.6}body.rx-site .container-launch-notice strong{font-size:14px}body.rx-site .container-launch-notice p{font-size:13px}body.rx-site .rx-instagram{border-radius:14px;box-shadow:none}body.rx-site .rx-instagram a{min-height:44px}
@media(max-width:1180px){body.rx-site .topbar>.nav{display:none}body.rx-site .topbar{gap:14px}body.rx-site .topbar .brand{margin-right:auto}body.rx-site .nav-toggle{display:inline-flex}body.rx-site .topbar .lang-switch{margin-left:auto}body.rx-site .topbar .brand img{width:166px}body.rx-site .footer-grid{grid-template-columns:1fr 1fr}body.rx-site .footer-legal{grid-column:1/-1}}
@media(max-width:760px){body.rx-site{--header-height:76px}body.rx-site .page{padding:0 20px}body.rx-site .topbar{min-height:76px;padding:13px 0;gap:10px}body.rx-site .topbar .brand img,body.rx-site .topbar-energy .brand img{width:145px;max-height:48px}body.rx-site .lang-switch select{min-width:57px;padding:8px}body.rx-site .nav-toggle{min-width:80px;padding:9px;gap:9px;font-size:12px}body.rx-site main [id]{scroll-margin-top:94px}body.rx-site .section{padding:44px 0}body.rx-site .section.alt{padding:25px 20px;margin:20px 0}body.rx-site .section-header{margin-bottom:24px}body.rx-site .section-lede,body.rx-site .lede{font-size:16px}body.rx-site .service-hero-card{padding:26px 22px}body.rx-site .service-columns{grid-template-columns:1fr}body.rx-site .service-page{padding-top:24px}body.rx-site .footer-grid{grid-template-columns:1fr;gap:25px}body.rx-site .footer-legal{grid-column:auto}body.rx-site :is(.footer,.ct-footer){margin-top:25px;padding-top:30px}body.rx-site .rx-footer-services{gap:8px 24px;margin-bottom:23px}body.rx-site .rx-footer-services a{font-size:13px}body.rx-site .legal{padding:26px 0 45px}body.rx-site .legal-card{padding:24px 20px}body.rx-site .legal-card h1{font-size:32px}body.rx-site .btn{min-height:48px}body.rx-site .cookie-banner{left:10px;bottom:10px;width:calc(100% - 20px);max-width:none;padding:15px;gap:14px;align-items:center}body.rx-site .cookie-banner p{font-size:12px}body.rx-site .cookie-banner .btn{font-size:12px;padding:10px 14px}body.rx-site .service-highlights{grid-template-columns:1fr}body.rx-site .contact-grid{grid-template-columns:1fr}body.rx-site .contact-form{min-width:0;padding:22px 18px}body.rx-site .service-list{padding-left:0}}
@media(max-width:360px){body.rx-site .page{padding:0 16px}body.rx-site .topbar .brand img,body.rx-site .topbar-energy .brand img{width:124px}body.rx-site .topbar{gap:8px}body.rx-site .nav-toggle{min-width:73px;padding:8px;gap:7px}body.rx-site .lang-switch select{min-width:51px;padding:7px;font-size:12px}body.rx-site .mobile-nav-panel{padding:20px}body.rx-site .mobile-nav-links .nav>a{font-size:17px}body.rx-site .mobile-nav .rx-nav-more-links{grid-template-columns:1fr 1fr;padding-left:0}body.rx-site .mobile-nav .rx-nav-more-links a{font-size:13px}}
@media(prefers-reduced-motion:reduce){body.rx-site *,body.rx-site *::before,body.rx-site *::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}body.rx-site .service-card:hover{transform:none}}
body.rx-site .rx-page-path{display:flex;gap:10px;align-items:center;max-width:100%;min-width:0;margin:0 0 25px;font-size:12px;color:#aeb1b8;line-height:1.6}body.rx-site .rx-page-path a{display:inline-flex;align-items:center;min-height:36px;flex:0 0 auto;color:#e5e6eb;text-decoration:none}body.rx-site .rx-page-path span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}body.rx-site .rx-page-path+section{margin-top:0}
@media(max-width:1180px){html:not(.rx-ready) body.rx-site .topbar{flex-wrap:wrap}html:not(.rx-ready) body.rx-site .topbar>.nav{display:flex;order:3;flex-basis:100%;justify-content:flex-start;overflow:auto;padding-bottom:8px;gap:20px}html:not(.rx-ready) body.rx-site .topbar>.nav a{flex:0 0 auto}}
body.rx-site :is(h1,h2,h3,h4){text-transform:none;text-shadow:none}body.rx-site .topbar .nav,body.rx-site .mobile-nav .nav,body.rx-site .mobile-nav-title{letter-spacing:normal;text-transform:none}body.rx-site .mobile-nav-links .nav a{letter-spacing:normal;text-transform:none}body.rx-site .nav a.nav-modular{color:#e0e1e5!important}body.rx-site .mobile-nav-links .nav>a.nav-modular{color:#fff!important}body.rx-site .nav a.nav-modular[aria-current=page]{color:#ffb4b5!important}
