/* Robocon CNC — design system v2 (2026-09)
   Replaces robocon-styles.css + robocon-layout-fixes.css.
   Legacy token names are kept so inline styles in page HTML follow the new palette. */

:root{
  /* v2 tokens */
  --rc-ink:#0c1117; --rc-ink-2:#39424f; --rc-muted:#667080; --rc-line:#e3e6eb; --rc-line-2:#d3d8df;
  --rc-bg:#ffffff; --rc-bg-2:#f5f6f8; --rc-bg-3:#eceef1;
  --orange:#f05a00; --rc-orange-ink:#b84400; --rc-orange-soft:#fff1e8; --rc-orange-hover:#d94f00;
  --rc-dark:#0c1117; --rc-dark-2:#161d26; --rc-dark-line:#263140; --rc-on-dark:#e9edf2; --rc-on-dark-muted:#9aa4b2;
  --rc-ok:#19a35b;
  --rc-display:"Inter Tight",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --rc-text:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --rc-mono:"JetBrains Mono",ui-monospace,Consolas,monospace;
  --rc-wrap:1440px; --rc-gutter:32px;
  --rc-radius:14px; --rc-radius-lg:22px; --rc-radius-xl:28px;
  --rc-shadow:0 1px 2px rgba(12,17,23,.04),0 8px 24px -16px rgba(12,17,23,.18);
  --rc-shadow-hover:0 24px 48px -28px rgba(12,17,23,.35);

  /* legacy names used by inline styles across pages */
  --navy-deep:#0c1117; --navy:#0c1117; --navy-mid:#1b2430; --navy-light:#232d3a;
  --blue-steel:#39424f; --blue-bright:#2563c8;
  --orange-glow:#ff6a10; --orange-dk:#c94900; --gold:#f05a00; --ice:#dfe5ec;
  --surface-0:#0c1117; --surface-1:#111820; --surface-2:#161d26; --surface-3:#1d2631;
  --surface-light:#f5f6f8; --surface-card:#ffffff;
  --tx-primary:#ffffff; --tx-secondary:rgba(233,237,242,.8); --tx-muted:#9aa4b2;
  --tx-dark:#0c1117; --tx-body:#39424f; --tx-light:#667080;
  --border-bright:rgba(255,255,255,.1); --border-mid:rgba(255,255,255,.08); --border-card:#e3e6eb;
  --glow-orange:none; --glow-blue:none;
  --shadow-card:0 1px 2px rgba(12,17,23,.04); --shadow-lift:0 24px 48px -28px rgba(12,17,23,.35); --shadow-deep:0 30px 60px -30px rgba(12,17,23,.45);
  --font-display:var(--rc-display); --font-serif:var(--rc-display); --font-mono:var(--rc-mono); --font-body:var(--rc-text);
  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-xl:24px; --r-pill:999px;
  --ease-out:cubic-bezier(.16,1,.3,1); --ease-in:cubic-bezier(.4,0,1,1); --ease-back:cubic-bezier(.3,1.4,.6,1);
}

/* ── base ─────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}
body{margin:0;background:var(--rc-bg);color:var(--rc-ink-2);font:400 16px/1.65 var(--rc-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
img{display:block}
h1,h2,h3,h4,h5{font-family:var(--rc-display);color:var(--rc-ink);letter-spacing:-.02em;line-height:1.12;margin:0 0 .5em;font-weight:700}
h1{font-size:clamp(34px,4.6vw,58px);line-height:1.04}
h2{font-size:clamp(28px,3.4vw,42px);line-height:1.08}
h3{font-size:clamp(18px,1.6vw,21px);font-weight:600;letter-spacing:-.01em;line-height:1.25}
h4{font-size:17px;font-weight:600}
p{margin:0 0 1em}
ul,ol{margin:0 0 1em;padding-left:1.2em}
a{color:var(--rc-orange-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--rc-ink)}
strong,b{color:inherit;font-weight:600}
::selection{background:#ffd9c2;color:var(--rc-ink)}
:focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:4px}
.skip-link,a[href="#main-content"]:not(.rc-logo){position:absolute;left:-9999px}
.skip-link:focus,a[href="#main-content"]:focus{left:16px;top:12px;z-index:200;background:#fff;padding:8px 12px;border-radius:8px}
main{display:block}
hr{border:0;border-top:1px solid var(--rc-line);margin:32px 0}

/* ── layout ───────────────────────────────────────────────────── */
.rc-wrap,.wrap{max-width:var(--rc-wrap);margin:0 auto;padding-inline:var(--rc-gutter)}
.sec,.rc-sec{padding-block:clamp(56px,8vw,104px);position:relative}
.rc-sec--flush{padding-top:0}
.sec--alt,.rc-sec--alt{background:var(--rc-bg-2)}
.sec--alt + .sec--alt{border-top:1px solid var(--rc-line)}
.sec--dk{background:var(--rc-dark);color:var(--rc-on-dark-muted);overflow:hidden}
.sec--dk::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px) 0 0/48px 48px;mask-image:radial-gradient(80% 80% at 80% 0%,#000,transparent);-webkit-mask-image:radial-gradient(80% 80% at 80% 0%,#000,transparent)}
.sec--dk > *{position:relative}
.sec--dk h2,.sec--dk h3,.sec--dk h4,.sec--dk strong{color:#fff}
.sec--dk p,.sec--dk li{color:var(--rc-on-dark-muted)}
.sec--dk a:not(.btn-se):not(.pill){color:#ffb27f}
.sec-hd{max-width:780px;margin:0 0 clamp(32px,4vw,48px)}
.sec-hd h2{margin:0}
.sec-hd p{margin:14px 0 0;font-size:18px;color:var(--rc-muted)}
.sec--dk .sec-hd p{color:var(--rc-on-dark-muted)}
.bar,.bar--l{display:none}
.grid-2,.g2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.grid-3,.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.grid-2--rev > :first-child{order:2}
.grid-2 img,.g2 img,.box.img img,.img-rounded{border-radius:var(--rc-radius-lg);width:100%;height:auto;border:1px solid var(--rc-line);background:var(--rc-bg-2)}
.box{padding:0}
.box h2{margin-bottom:.4em}

/* ── buttons ──────────────────────────────────────────────────── */
.rc-btn,.btn-se{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 24px;border-radius:999px;border:1px solid transparent;font:600 15px/1.2 var(--rc-text);letter-spacing:0;text-transform:none;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s;white-space:normal;text-align:center}
.rc-btn--primary,.btn-se{background:var(--orange);color:#fff !important}
.rc-btn--primary:hover,.btn-se:hover{background:var(--rc-orange-hover);color:#fff !important;transform:translateY(-1px)}
.rc-btn--sm{min-height:40px;padding:8px 18px;font-size:14px}
.rc-btn--ghost,.btn-se.btn-ol,.btn-se.btn-ol-dark,.btn-ol{background:#fff;color:var(--rc-ink) !important;border-color:var(--rc-line-2)}
.rc-btn--ghost:hover,.btn-se.btn-ol:hover,.btn-se.btn-ol-dark:hover,.btn-ol:hover{background:#fff;border-color:var(--rc-ink);color:var(--rc-ink) !important}
.rc-btn--ghost-dark,.sec--dk .btn-se.btn-ol,.cta-ban .btn-se.btn-ol{background:transparent;color:#fff !important;border-color:#3a4757}
.rc-btn--ghost-dark:hover,.sec--dk .btn-se.btn-ol:hover,.cta-ban .btn-se.btn-ol:hover{border-color:#fff;background:transparent;color:#fff !important}
.btn-se.btn-wh{background:#fff;color:var(--rc-ink) !important;border-color:#fff}
.btn-se.btn-wh:hover{background:#eef0f3;color:var(--rc-ink) !important}
.btn-se.btn-hero{font-size:16px;padding:14px 28px}
.btn-se[style*="padding"]{padding:14px 28px !important;font-size:15px !important}

/* ── header ───────────────────────────────────────────────────── */
.rc-hdr{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--rc-line)}
.rc-hdr-in{max-width:var(--rc-wrap);margin:0 auto;padding-inline:var(--rc-gutter);height:68px;display:flex;align-items:center;gap:28px}
.rc-logo{flex:none;display:block}
.rc-logo img{height:34px;width:auto}
.navbar-menu{display:flex;align-items:center;gap:4px;flex:1}
.nav-link{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:8px;color:var(--rc-ink-2);text-decoration:none;font:500 15px/1 var(--rc-text);white-space:nowrap}
.nav-link:hover{color:var(--rc-ink);background:var(--rc-bg-2)}
.nav-dropdown{position:relative}
.nav-dropdown-toggle::after{content:"";width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.6}
.nav-dropdown-menu{display:none;position:absolute;top:calc(100% + 10px);left:-8px;min-width:300px;background:#fff;border:1px solid var(--rc-line);border-radius:16px;box-shadow:0 24px 60px -24px rgba(12,17,23,.35);padding:8px;z-index:120}
.nav-dropdown::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px}
.nav-dropdown-menu--two-col{min-width:560px;grid-template-columns:1fr 1fr;gap:2px}
.nav-dropdown--end .nav-dropdown-menu{left:auto;right:0}
.nav-dropdown-item{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--rc-ink)}
.nav-dropdown-item b{display:block;font:600 14px/1.3 var(--rc-text);color:var(--rc-ink)}
.nav-dropdown-item small{display:block;font-size:12.5px;color:var(--rc-muted);margin-top:2px}
.nav-dropdown-item:hover{background:var(--rc-bg-2)}
@media (hover:hover) and (pointer:fine){
  .nav-dropdown:hover .nav-dropdown-menu{display:block}
  .nav-dropdown:hover .nav-dropdown-menu--two-col{display:grid}
}
.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown.open .nav-dropdown-menu{display:block}
.nav-dropdown:focus-within .nav-dropdown-menu--two-col,.nav-dropdown.open .nav-dropdown-menu--two-col{display:grid}
.rc-nav-end{margin-left:auto;display:flex;align-items:center;gap:8px}
.rc-login{color:var(--rc-ink-2)}
.rc-hdr-cta{display:none}
.navbar-toggler{display:none;width:44px;height:44px;border:0;background:none;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0;border-radius:10px}
.navbar-toggler span{display:block;width:22px;height:2px;background:var(--rc-ink);border-radius:2px;transition:transform .25s,opacity .2s}
.navbar-toggler.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.navbar-toggler.open span:nth-child(2){opacity:0}
.navbar-toggler.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media (max-width:1140px){
  .rc-hdr-in{gap:12px}
  .rc-hdr-cta{display:inline-flex;margin-left:auto}
  .navbar-toggler{display:flex}
  .rc-nav-end > .rc-btn{display:none}
  .navbar-menu{display:none;position:absolute;left:0;right:0;top:68px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--rc-line);box-shadow:0 30px 60px -30px rgba(12,17,23,.35);padding:8px var(--rc-gutter) 20px;max-height:calc(100vh - 68px);overflow-y:auto}
  .navbar-menu.active{display:flex}
  .nav-link{padding:14px 4px;border-radius:0;border-bottom:1px solid var(--rc-line);font-size:16px;justify-content:space-between;width:100%}
  .nav-link:hover{background:none}
  .nav-dropdown::after{display:none}
  .nav-dropdown-menu,.nav-dropdown-menu--two-col{position:static;min-width:0;box-shadow:none;border:0;border-radius:0;padding:4px 0 10px;grid-template-columns:1fr}
  .nav-dropdown-item{padding:10px 8px}
  .rc-nav-end{margin:16px 0 0;flex-direction:column;align-items:stretch;gap:10px}
  .rc-nav-end .nav-dropdown{order:2}
  .rc-nav-end .rc-btn{min-height:48px;font-size:15px}
}

/* ── breadcrumbs ──────────────────────────────────────────────── */
.rc-crumbs,.page-breadcrumb,.breadcrumb-se{max-width:var(--rc-wrap);margin:0 auto;padding:16px var(--rc-gutter) 0;font-size:13px;color:var(--rc-muted)}
.rc-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}
.rc-crumbs li{display:inline-flex;align-items:center;gap:6px}
.rc-crumbs a,.page-breadcrumb a,.breadcrumb-se a{color:var(--rc-muted);text-decoration:none}
.rc-crumbs a:hover,.page-breadcrumb a:hover{color:var(--rc-ink)}
.rc-crumbs [aria-current] span,.rc-crumbs li:last-child span[itemprop="name"]{color:var(--rc-ink);font-weight:500}
.page-breadcrumb span{margin:0 4px}
.rc-crumbs + .hero,.rc-crumbs + section{margin-top:0}

/* ── inner-page hero ──────────────────────────────────────────── */
.hero,.rc-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--rc-line);
  background:linear-gradient(to bottom,rgba(255,255,255,0) 55%,#fff),linear-gradient(var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,#fbfbfc}
.hero{padding-block:clamp(40px,6vw,80px) clamp(48px,7vw,88px)}
.hero-in{max-width:var(--rc-wrap);margin:0 auto;padding-inline:var(--rc-gutter);display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}
.hero-txt{min-width:0}
.hero-txt h1{margin:0 0 20px}
.hero-txt h1 span,.hero h1 span{color:var(--orange)}
.hero-txt h1 .h1-sub,.hero h1 .h1-sub{display:block;margin-top:14px;font-size:.46em;line-height:1.3;font-weight:600;letter-spacing:-.01em;color:var(--rc-ink-2)}
.premium-badge{display:inline-block;margin-bottom:14px;font:500 12px/1.3 var(--rc-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--rc-orange-ink)}
.hero-txt > p{font-size:18px;color:var(--rc-ink-2);max-width:60ch}
.hero-txt > p[style]{font-size:14px !important;color:var(--rc-muted) !important}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}
.badge{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--rc-line-2);font:500 13px/1 var(--rc-text);color:var(--rc-ink)}
.badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange)}
.hero-media{margin:0;min-width:0}
.hero-media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--rc-radius-xl);border:1px solid var(--rc-line);background:#eef0f3}
.hero-media.is-cutout{border-radius:var(--rc-radius-xl);border:1px solid var(--rc-line);background:radial-gradient(120% 90% at 50% 40%,#fff 0%,#eef0f3 70%)}
.hero-media.is-cutout img{object-fit:contain;padding:6%;border:0;background:none;mix-blend-mode:multiply}

/* contact page: its own <style> used the old dark theme */
html body .contact-breadcrumb__inner,html body .contact-hero__inner,html body .contact-main__wrap,html body .contact-map-shell{max-width:var(--rc-wrap)}
html body .contact-hero{padding:clamp(40px,6vw,80px) var(--rc-gutter);border-bottom:1px solid var(--rc-line);background:linear-gradient(to bottom,rgba(255,255,255,0) 55%,#fff),linear-gradient(var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,#fbfbfc}
html body .contact-hero::before{display:none}
html body .contact-hero h1{color:var(--rc-ink);font-family:var(--rc-display)}
html body .contact-hero h1 span{color:var(--orange)}
html body .contact-hero p{color:var(--rc-ink-2)}
html body .contact-hero__panel{background:#fff;border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);box-shadow:var(--rc-shadow);backdrop-filter:none}
html body .contact-hero__panel h2,html body .contact-hero__panel strong,html body .contact-hero__panel b,html body .contact-hero__panel h3{color:var(--rc-ink)}
html body .contact-hero__panel p,html body .contact-hero__panel span,html body .contact-hero__panel li{color:var(--rc-ink-2)}
html body .contact-hero .btn-se.btn-wh{background:#fff;color:var(--rc-ink) !important;border-color:var(--rc-line-2)}
html body .contact-hero [class*="eyebrow"],html body .contact-hero [class*="kicker"],html body .contact-hero [class*="badge"]{background:transparent;border:0;padding:0;color:var(--rc-orange-ink);font:500 12px/1.3 var(--rc-mono);letter-spacing:.08em;text-transform:uppercase}
html body .contact-main{background:var(--rc-bg-2);padding:clamp(48px,7vw,88px) var(--rc-gutter)}
html body .contact-main .section-title,html body .contact-map-head h2{color:var(--rc-ink);font-family:var(--rc-display)}
html body .contact-panel,html body .contact-info-card,html body .contact-map-wrap{border-radius:var(--rc-radius-lg);border-color:var(--rc-line);box-shadow:none}
html body .contact-map-section{padding:clamp(48px,7vw,88px) var(--rc-gutter)}

/* careers page: same treatment */
html body .career-page{background:var(--rc-bg-2);color:var(--rc-ink-2);font-family:var(--rc-text)}
html body .career-hero{padding:clamp(40px,6vw,72px) var(--rc-gutter);color:var(--rc-ink);border-bottom:1px solid var(--rc-line);background:linear-gradient(to bottom,rgba(255,255,255,0) 55%,#fff),linear-gradient(var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,#fbfbfc}
html body .career-hero::before{display:none}
html body .career-hero{padding-inline:max(var(--rc-gutter),calc((100% - var(--rc-wrap))/2 + var(--rc-gutter)))}
html body .career-hero-tag{display:inline-block;width:auto;background:transparent;border:0;padding:0;margin-bottom:12px;color:var(--rc-orange-ink);font:500 12px/1.3 var(--rc-mono);letter-spacing:.08em;text-transform:uppercase}
html body .career-hero h1{color:var(--rc-ink);font-family:var(--rc-display);font-weight:700;letter-spacing:-.02em}
html body .career-hero h1 span,html body .career-hero h1 em{color:var(--orange)}
html body .career-hero p{color:var(--rc-ink-2)}
html body .sidebar-card,html body .form-card-header{background:var(--rc-dark)}
html body .sidebar-card h2,html body .form-card-header-text h2{font-family:var(--rc-display);letter-spacing:-.01em}
html body .sec-hd h2{font-family:var(--rc-display)}
html body .sec--dk .sec-hd h2{color:#fff}
html body .bar,html body .sec-hd .bar{display:none}
html body .cta-ban{background:var(--rc-dark);border-radius:var(--rc-radius-xl)}
html body .cta-ban h2{font-family:var(--rc-display)}
.why-card-icon .rc-ico,.file-zone-icon .rc-ico{margin:0 auto 10px}
html body .perks-strip{max-width:var(--rc-wrap);margin:0 auto;padding:28px var(--rc-gutter) 0;justify-content:flex-start}
html body .perk-chip{border-radius:999px;border:1px solid var(--rc-line-2);box-shadow:none;color:var(--rc-ink);font:500 13px/1.2 var(--rc-text)}
html body .career-form-wrap{max-width:var(--rc-wrap);margin:32px auto 0;padding:0 var(--rc-gutter) clamp(56px,7vw,88px);grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:24px}
html body .sidebar-card,html body .form-card{border-radius:var(--rc-radius-lg);overflow:hidden}
html body .form-card{border:1px solid var(--rc-line);box-shadow:none}
html body .why-join-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
html body .why-card{border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);padding:26px 22px;text-align:left}
html body .why-card .rc-ico{margin:0 0 16px}
html body .why-card h3{font:600 17px/1.3 var(--rc-display);color:var(--rc-ink);margin:0 0 8px}
html body .why-card p{font-size:14.5px;color:var(--rc-ink-2)}
html body .cta-ban h2{margin-left:auto;margin-right:auto;max-width:24ch}
@media (max-width:900px){html body .career-form-wrap{grid-template-columns:1fr}html body .why-join-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){html body .why-join-grid{grid-template-columns:1fr}}
/* quote form: decorative glow on the side rail poked 70px past the viewport on phones */
html body .rfq-rail{overflow:hidden}

/* old homepage-style hero still used on a few location pages */
.hero-section{position:relative;overflow:hidden;border-bottom:1px solid var(--rc-line);padding-block:clamp(40px,6vw,80px);background:linear-gradient(to bottom,rgba(255,255,255,0) 55%,#fff),linear-gradient(var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,var(--rc-line) 1px,transparent 1px) 0 0/48px 48px,#fbfbfc}
.hero-overlay{display:none}
.hero-content{max-width:var(--rc-wrap) !important;margin:0 auto !important;padding-inline:var(--rc-gutter) !important;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}
.hero-content > *{min-width:0}
.hero-section h1{color:var(--rc-ink);margin:0 0 18px}
.hero-section h1 span{color:var(--orange)}
.hero-lead{font-size:18px;color:var(--rc-ink-2);margin:0 0 22px}
.hero-checks{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.hero-checks span{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--rc-line-2);font:500 13px/1 var(--rc-text);color:var(--rc-ink)}
.hero-buttons{display:flex;flex-wrap:wrap;gap:12px}
@media (max-width:1024px){.hero-content{grid-template-columns:1fr !important}}

/* ── stat bar + trust bar ─────────────────────────────────────── */
.statbar,.rc-stats{background:#fff;border-bottom:1px solid var(--rc-line)}
.statbar-in,.rc-stats-in{max-width:var(--rc-wrap);margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.stat,.rc-stat{padding:26px var(--rc-gutter);border-right:1px solid var(--rc-line);min-width:0}
.stat:last-child,.rc-stat:last-child{border-right:0}
.stat-n,.rc-stat b{display:block;font:700 clamp(26px,3vw,38px)/1.05 var(--rc-display);letter-spacing:-.02em;color:var(--rc-ink);overflow-wrap:anywhere}
.stat-l,.rc-stat span{display:block;margin-top:8px;font-size:14px;color:var(--rc-muted);line-height:1.35}
.trustbar,.rc-trust{background:#fbfbfc;border-bottom:1px solid var(--rc-line);padding:16px var(--rc-gutter)}
.trust-items{max-width:var(--rc-wrap);margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px}
.trust-item{display:inline-flex;align-items:center;gap:8px;font:500 14px/1.3 var(--rc-text);color:var(--rc-ink-2)}
.trust-item i{display:none}
.trust-item::before,.rc-trust > span::before{content:"";flex:none;width:16px;height:16px;border-radius:50%;background:var(--rc-ok) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.rc-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;font-size:14px}
.rc-trust > span{display:inline-flex;align-items:center;gap:8px}
.rc-trust b{color:var(--rc-ink)}

/* ── cards ────────────────────────────────────────────────────── */
.card-se,.ind-card,.case-card,.image-card,.info-card,.why-card,.material-card,.sec-card{position:relative;background:#fff;border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);padding:28px;transition:transform .25s var(--ease-out),box-shadow .25s,border-color .25s;min-width:0}
.card-se:hover,.ind-card:hover,.case-card:hover,.image-card:hover,.sec-card:hover{transform:translateY(-3px);border-color:var(--rc-line-2);box-shadow:var(--rc-shadow-hover)}
.sec--alt .card-se,.sec--alt .ind-card,.sec--alt .case-card,.sec--alt .image-card{background:#fff}
.card-se h3,.ind-card h3,.case-card h3,.image-card h3,.card-h3,.card-title{font:600 19px/1.3 var(--rc-display);letter-spacing:-.01em;color:var(--rc-ink);margin:0 0 8px}
.card-se p,.ind-card p,.case-card > p,.image-card p{font-size:15px;color:var(--rc-ink-2);margin:0 0 10px}
.card-se p:last-child,.ind-card p:last-child{margin-bottom:0}
.card-se a[style*="color:var(--orange)"]{display:inline-flex;gap:6px;margin-top:8px;font-weight:600;font-size:14px;color:var(--rc-orange-ink) !important;text-decoration:none}
.card-dk,.sec--dk .card-se{background:rgba(255,255,255,.035);border-color:var(--rc-dark-line)}
.card-dk:hover,.sec--dk .card-se:hover{border-color:#3a4757;box-shadow:none}
.card-dk h3,.card-dk .card-h3,.sec--dk .card-se h3,.sec--dk .card-h3{color:#fff}
.card-dk p,.sec--dk .card-se p{color:var(--rc-on-dark-muted)}
.image-card{padding:12px}
.image-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:12px;margin:0 0 14px;background:var(--rc-bg-2)}
.image-card figure{margin:0}
.image-card figcaption,.image-card > h3,.image-card > p,.image-card > a{padding-inline:10px}
.image-card figcaption strong{display:block;font:600 17px/1.3 var(--rc-display);color:var(--rc-ink);margin-bottom:6px}
.image-card .btn-se{margin:8px 10px 10px}
.sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0}
.sec-card{padding:0;overflow:hidden;display:flex}
.sec-card figure{margin:0;display:flex;flex-direction:column;width:100%}
.sec-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.sec-card figcaption{padding:18px 20px 22px}
.sec-card figcaption strong{display:block;font:600 17px/1.3 var(--rc-display);color:var(--rc-ink);margin-bottom:6px}
.sec-card figcaption p{margin:0;font-size:14.5px}
.c-icon,.rc-ico{width:44px;height:44px;border-radius:12px;background:var(--rc-orange-soft);color:var(--orange);display:grid;place-items:center;margin:0 0 18px;font-size:22px;line-height:1;font-family:var(--rc-display);font-weight:700;flex:none}
.c-icon svg,.rc-ico svg{width:22px;height:22px}
.sec--dk .c-icon,.sec--dk .rc-ico,.card-dk .rc-ico{background:rgba(240,90,0,.14);color:#ff8a45}
.case-card{border-left:1px solid var(--rc-line)}
.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;margin-top:18px;padding-top:16px;border-top:1px solid var(--rc-line)}
.cm{font-size:14px;color:var(--rc-ink)}
.cm strong,.cm-label{display:block;font:500 11px/1.3 var(--rc-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--rc-muted);margin-bottom:3px}
.mat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.mat-pill{background:#fff;border:1px solid var(--rc-line);border-radius:var(--rc-radius);padding:14px 16px;font:600 15px/1.3 var(--rc-display);color:var(--rc-ink)}
.mat-pill span{display:block;font:400 13px/1.4 var(--rc-text);color:var(--rc-muted);margin-top:3px}
.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.pill{display:inline-flex;align-items:center;padding:9px 16px;border:1px solid var(--rc-line-2);border-radius:999px;background:#fff;color:var(--rc-ink) !important;font:500 14px/1.2 var(--rc-text);text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.pill:hover{background:var(--rc-ink);border-color:var(--rc-ink);color:#fff !important}
.sec--dk .pill{background:transparent;border-color:#3a4757;color:#fff !important}
.hi{color:var(--rc-orange-ink);font-weight:600}
.step-num{width:44px;height:44px;border-radius:12px;background:var(--rc-ink) !important;color:#fff;display:grid;place-items:center;font:600 16px/1 var(--rc-mono);margin:0 0 16px}
[style*="text-align:center"] > .step-num,[style*="text-align: center"] > .step-num{margin-inline:auto}

/* ── lists / tables ───────────────────────────────────────────── */
ul.bul{list-style:none;padding:0;margin:0 0 1.2em;max-width:none}
ul.bul li{position:relative;padding:6px 0 6px 30px;color:var(--rc-ink-2);font-size:16px;background:none;border:0}
ul.bul li::before{content:"";position:absolute;left:0;top:10px;width:18px;height:18px;border-radius:50%;background:var(--rc-orange-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.2 2.2 4.8-4.8' fill='none' stroke='%23f05a00' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.sec--dk ul.bul li{color:var(--rc-on-dark-muted)}
.tbl-se,.data-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--rc-line);border-radius:var(--rc-radius);overflow:hidden;font-size:15px;background:#fff}
.tbl-se th,.data-table th{background:var(--rc-bg-2);color:var(--rc-ink);font:600 14px/1.3 var(--rc-text);text-align:left;padding:14px 18px;border-bottom:1px solid var(--rc-line)}
.tbl-se td,.data-table td{padding:13px 18px;border-bottom:1px solid var(--rc-line);color:var(--rc-ink-2);vertical-align:top}
.tbl-se tr:last-child td,.data-table tr:last-child td{border-bottom:0}
.tbl-se td.hi,.data-table td.ok{background:#fff8f3;color:var(--rc-ink);font-weight:600}

/* ── FAQ ──────────────────────────────────────────────────────── */
.faq-item{border-bottom:1px solid var(--rc-line)}
.faq-item:first-child{border-top:1px solid var(--rc-line)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;background:none;border:0;cursor:pointer;text-align:left;font:600 17px/1.35 var(--rc-display);color:var(--rc-ink)}
.faq-q:hover{color:var(--rc-orange-ink)}
.faq-ic{flex:none;width:28px;height:28px;border-radius:50%;border:1px solid var(--rc-line-2);display:grid;place-items:center;font:400 18px/1 var(--rc-text);color:var(--rc-ink-2);transition:transform .25s,background .2s}
.faq-item.open .faq-ic{transform:rotate(45deg);background:var(--rc-ink);color:#fff;border-color:var(--rc-ink)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .4s var(--ease-out)}
.faq-item.open .faq-a{max-height:900px}
.faq-a p{margin:0;padding:0 48px 22px 0;color:var(--rc-ink-2)}
.sec--dk .faq-item{border-color:var(--rc-dark-line)}
.sec--dk .faq-q{color:#fff}

/* ── testimonials / team ──────────────────────────────────────── */
.testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.testimonial-card{border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);padding:28px;background:#fff;display:flex;flex-direction:column;gap:14px}
.testimonial-stars,.rc-stars{color:var(--orange);letter-spacing:2px;font-size:14px}
.testimonial-quote{margin:0;font-size:16px;color:var(--rc-ink);line-height:1.6}
.testimonial-meta{margin-top:auto;font-size:13px;color:var(--rc-muted)}
.testimonial-meta strong{display:block;color:var(--rc-ink);font-size:14px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.team-card{border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);padding:28px;background:#fff;text-align:left}
.team-avatar{width:88px;height:88px;border-radius:50%;overflow:hidden;margin:0 0 18px;background:var(--rc-bg-2)}
.team-avatar img{width:100%;height:100%;object-fit:cover}
.team-avatar-fallback{width:100%;height:100%;display:grid;place-items:center;font-size:32px}
.team-name{display:block;font:600 19px/1.3 var(--rc-display);color:var(--rc-ink)}
.team-role{display:block;margin:4px 0 12px;font:500 12px/1.3 var(--rc-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--rc-orange-ink)}
.team-bio{font-size:15px;color:var(--rc-ink-2)}
.team-linkedin{font-weight:600;font-size:14px;text-decoration:none}

/* ── CTA band ─────────────────────────────────────────────────── */
.cta-ban{position:relative;overflow:hidden;background:var(--rc-dark);color:var(--rc-on-dark-muted);text-align:center;width:calc(100% - 2*var(--rc-gutter));max-width:calc(var(--rc-wrap) - 2*var(--rc-gutter));margin:clamp(40px,6vw,72px) auto;border-radius:var(--rc-radius-xl);padding:clamp(40px,6vw,72px) clamp(24px,5vw,64px)}
.cta-ban::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px) 0 0/40px 40px,linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px) 0 0/40px 40px;mask-image:radial-gradient(70% 100% at 100% 0,#000,transparent);-webkit-mask-image:radial-gradient(70% 100% at 100% 0,#000,transparent)}
.cta-ban > *{position:relative}
.cta-ban h2{color:#fff;margin:0 auto 12px;max-width:22ch}
.cta-ban p{color:var(--rc-on-dark-muted);max-width:60ch;margin:0 auto 28px;font-size:17px}
.cta-ban .btn-se{margin:4px}
.cta-ban a:not(.btn-se){color:#ffb27f}

/* ── fade-in (kept subtle) ────────────────────────────────────── */
.fade-in{opacity:0;transform:translateY(12px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}
.fade-in.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.fade-in{opacity:1;transform:none;transition:none}}

/* ── blog article ─────────────────────────────────────────────── */
article.rc-article,body > article{max-width:760px !important;margin:0 auto !important;padding:clamp(32px,5vw,56px) var(--rc-gutter) clamp(56px,8vw,88px) !important}
article.rc-article h1,body > article h1{font-size:clamp(32px,4vw,48px) !important;line-height:1.08 !important;margin:0 0 20px !important}
article.rc-article h2,body > article h2{font-size:clamp(24px,2.6vw,30px);margin:48px 0 14px}
article.rc-article h3,body > article h3{font-size:20px;margin:32px 0 10px}
article.rc-article p,body > article p,article.rc-article li,body > article li{font-size:17px;line-height:1.75;color:var(--rc-ink-2)}
article.rc-article table,body > article table{margin:24px 0;display:block;overflow-x:auto}
article.rc-article blockquote,body > article blockquote{margin:24px 0;padding:4px 0 4px 18px;border-left:2px solid var(--orange);color:var(--rc-ink)}
.read-more-link{font-weight:600;text-decoration:none;color:var(--rc-orange-ink)}

/* ── footer ───────────────────────────────────────────────────── */
.rc-foot{background:#fff;border-top:1px solid var(--rc-line);padding-block:clamp(40px,6vw,64px) 28px;color:var(--rc-ink-2);font-size:14.5px}
.rc-foot-cta{position:relative;overflow:hidden;display:grid;grid-template-columns:1.3fr auto;gap:24px 40px;align-items:center;background:var(--rc-dark);border-radius:var(--rc-radius-xl);padding:clamp(32px,5vw,56px);margin-bottom:clamp(40px,6vw,64px)}
.rc-foot-cta h2{color:#fff;margin:0 0 8px;font-size:clamp(26px,3vw,36px)}
.rc-foot-cta p{margin:0;color:var(--rc-on-dark-muted)}
.rc-foot-cta-actions{display:flex;flex-wrap:wrap;gap:12px}
.rc-foot-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr) 1.3fr;gap:32px}
.rc-foot h3{font:500 12px/1 var(--rc-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--rc-muted);margin:0 0 16px}
.rc-foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.rc-foot a{color:var(--rc-ink-2);text-decoration:none}
.rc-foot a:hover{color:var(--rc-orange-ink)}
.rc-foot-brand img{height:32px;width:auto;margin-bottom:16px}
.rc-foot-brand p{max-width:36ch;margin:0 0 18px}
.rc-social{display:flex;gap:8px}
.rc-social a{width:38px;height:38px;border-radius:10px;border:1px solid var(--rc-line);display:grid;place-items:center;color:var(--rc-ink-2)}
.rc-social a:hover{border-color:var(--rc-ink);color:var(--rc-ink)}
.rc-foot-contact p{margin:0 0 12px}
.rc-foot-locs{margin-top:36px;padding-top:24px;border-top:1px solid var(--rc-line)}
.rc-foot-locs h3{margin-bottom:10px}
.rc-foot-locs p{margin:0;line-height:2;color:var(--rc-line-2)}
.rc-foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--rc-line);font-size:13px;color:var(--rc-muted)}
.wa-float{font-family:var(--rc-text) !important}

/* ── homepage (rc-*) ──────────────────────────────────────────── */
.rc-eyebrow,.rc-k{font:500 12px/1.3 var(--rc-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--rc-orange-ink)}
.rc-lede{font-size:18px;color:var(--rc-ink-2);max-width:60ch}
.rc-lede--sm{font-size:16px;margin-top:14px}
.rc-hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;padding-block:clamp(40px,6vw,72px) clamp(56px,7vw,88px)}
.rc-hero h1{font-size:clamp(36px,4.5vw,60px);line-height:1.03;margin:16px 0 20px}
.rc-hero h1 em{font-style:normal;color:var(--orange)}
.rc-hero .rc-lede{margin:0 0 30px}
.rc-drop{display:block;max-width:560px;border:1.5px dashed #c9ced6;border-radius:var(--rc-radius-lg);background:#fff;padding:20px 22px;text-decoration:none;color:var(--rc-ink);transition:border-color .2s,box-shadow .2s}
.rc-drop:hover{border-color:var(--orange);box-shadow:0 12px 40px -14px rgba(240,90,0,.3);color:var(--rc-ink)}
.rc-drop-top{display:flex;align-items:center;gap:16px}
.rc-drop-ic{flex:none;width:48px;height:48px;border-radius:12px;background:var(--rc-orange-soft);color:var(--orange);display:grid;place-items:center}
.rc-drop-ic svg{width:24px;height:24px}
.rc-drop strong{display:block;font:600 17px/1.3 var(--rc-display)}
.rc-drop small{display:block;color:var(--rc-muted);font-size:14px;line-height:1.45;margin-top:2px}
.rc-drop-go{margin-left:auto;flex:none}
.rc-drop-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;padding-top:14px;border-top:1px solid var(--rc-line);font-size:13px;color:var(--rc-ink-2)}
.rc-drop-meta span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--rc-ok);margin-right:8px;vertical-align:middle}
.rc-hero-alt{margin:16px 0 0;font-size:14px;color:var(--rc-muted)}
.rc-hero-alt a{color:var(--rc-ink);font-weight:600}
.rc-spec{position:relative;aspect-ratio:1/1;width:100%;max-width:560px;justify-self:end}
.rc-spec-plate{position:absolute;inset:0;border-radius:var(--rc-radius-xl);background:radial-gradient(120% 90% at 50% 40%,#fff 0%,#eef0f3 70%);border:1px solid var(--rc-line)}
.rc-spec img{position:absolute;inset:8% 3% 12%;width:94%;height:78%;object-fit:contain;mix-blend-mode:multiply}
.rc-tag{position:absolute;display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--rc-line-2);box-shadow:0 6px 18px -8px rgba(12,17,23,.18);font:500 12px/1 var(--rc-mono);color:var(--rc-ink);white-space:nowrap}
.rc-tag i{width:7px;height:7px;border-radius:50%;background:var(--orange)}
.rc-tag--1{top:9%;left:4%}.rc-tag--2{top:20%;right:2%}.rc-tag--3{bottom:22%;left:0}.rc-tag--4{bottom:9%;right:6%}
.rc-spec-foot{position:absolute;left:24px;right:24px;bottom:18px;display:flex;justify-content:space-between;gap:12px;font:500 11px/1 var(--rc-mono);letter-spacing:.06em;color:var(--rc-muted)}
.rc-sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 40px;margin-bottom:40px}
.rc-sec-head h2{margin:12px 0 0;max-width:26ch}
.rc-sec-head p{margin:0;color:var(--rc-muted);max-width:46ch}
.rc-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:s}
.rc-steps li{background:var(--rc-bg-2);border-radius:var(--rc-radius);padding:26px 22px 24px}
.rc-steps li::before{counter-increment:s;content:"0" counter(s);font:500 12px/1 var(--rc-mono);color:var(--rc-orange-ink)}
.rc-steps h3{margin:18px 0 8px;font-size:19px}
.rc-steps p{margin:0;font-size:15px}
.rc-bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:minmax(210px,auto);gap:16px}
.rc-tile{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;border-radius:var(--rc-radius-lg);background:var(--rc-bg-2);padding:28px;grid-column:span 2;color:var(--rc-ink-2);text-decoration:none}
.rc-tile h3{font-size:22px;margin:0 0 8px}
.rc-tile p{margin:0;font-size:15px}
.rc-tile .rc-k{position:absolute;top:26px;left:28px;color:var(--rc-muted)}
.rc-tile--half{grid-column:span 3}
.rc-tile--link:hover{background:var(--rc-bg-3);color:var(--rc-ink-2)}
.rc-tile--big{grid-column:span 4;grid-row:span 2;background:var(--rc-dark);color:#d7dde5}
.rc-tile--big img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75}
.rc-tile--big::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,17,23,0) 25%,rgba(12,17,23,.9))}
.rc-tile--big > :not(img){position:relative;z-index:1}
.rc-tile--big .rc-k{position:absolute;color:#c8d0da}
.rc-tile--big h3{color:#fff;font-size:clamp(26px,3vw,34px);max-width:22ch}
.rc-tile--big p{max-width:52ch;color:#d7dde5}
.rc-tile--accent{background:var(--orange);color:#ffe3d1}
.rc-tile--accent .rc-k{color:#ffe3d1}
.rc-big{font:700 56px/1 var(--rc-display);letter-spacing:-.03em;color:#fff;margin-bottom:10px}
.rc-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.rc-chips span{font:500 12px/1 var(--rc-mono);padding:8px 10px;border-radius:8px;background:#fff;border:1px solid var(--rc-line);color:var(--rc-ink)}
.rc-chips--rc-dark span{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:#fff}
.rc-inds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rc-ind{display:block;border-radius:var(--rc-radius-lg);overflow:hidden;background:#fff;border:1px solid var(--rc-line);text-decoration:none;color:var(--rc-ink);transition:transform .25s,box-shadow .25s}
.rc-ind:hover{transform:translateY(-4px);box-shadow:var(--rc-shadow-hover);color:var(--rc-ink)}
.rc-ind-pic{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#eef0f3}
.rc-ind-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.rc-ind:hover .rc-ind-pic img{transform:scale(1.04)}
.rc-ind-cap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 18px;border-top:1px solid var(--rc-line)}
.rc-ind-cap b{display:block;font:600 16px/1.3 var(--rc-display)}
.rc-ind-cap small{display:block;font-size:13px;color:var(--rc-muted)}
.rc-ind-cap i{font-style:normal;width:32px;height:32px;flex:none;border-radius:50%;border:1px solid var(--rc-line-2);display:grid;place-items:center;transition:background .2s,color .2s}
.rc-ind:hover .rc-ind-cap i{background:var(--rc-ink);color:#fff;border-color:var(--rc-ink)}
.rc-case{display:grid;grid-template-columns:1fr 1fr;border-radius:var(--rc-radius-xl);overflow:hidden;background:var(--rc-dark);color:var(--rc-on-dark-muted)}
.rc-case-pic{position:relative;min-height:380px;background:radial-gradient(90% 80% at 50% 45%,#fff 0%,#eceef1 75%)}
.rc-case-pic img{position:absolute;inset:8%;width:84%;height:84%;object-fit:contain;mix-blend-mode:multiply}
.rc-case-body{padding:clamp(28px,4vw,56px)}
.rc-case-body .rc-eyebrow{color:#ff9a5c}
.rc-case-body h2{color:#fff;font-size:clamp(24px,2.6vw,32px);line-height:1.15;margin:14px 0 16px}
.rc-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rc-dark-line);border-radius:14px;overflow:hidden;margin:26px 0}
.rc-kpis div{background:var(--rc-dark-2);padding:18px}
.rc-kpis b{display:block;font:700 26px/1 var(--rc-display);color:#fff}
.rc-kpis span{font-size:13px}
.rc-case blockquote{margin:0 0 24px;padding-left:16px;border-left:2px solid var(--orange);color:#dfe5ec}
.rc-case cite{display:block;margin-top:10px;font-style:normal;font-size:13px;color:var(--rc-on-dark-muted)}
.rc-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rc-quotes figure{margin:0;border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);padding:28px;display:flex;flex-direction:column;gap:16px}
.rc-quotes blockquote{margin:0;color:var(--rc-ink);font-size:16px}
.rc-quotes figcaption{margin-top:auto;font-size:13px;color:var(--rc-muted)}
.rc-quotes figcaption b{display:block;color:var(--rc-ink);font-size:14px}
.rc-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:start}
.rc-split h2{margin-top:12px}
.rc-prose p{font-size:16.5px}
.rc-locs{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.rc-locs a{padding:8px 14px;border-radius:999px;border:1px solid var(--rc-line-2);background:#fff;color:var(--rc-ink);font-size:14px;text-decoration:none}
.rc-locs a:hover{background:var(--rc-ink);border-color:var(--rc-ink);color:#fff}
.rc-guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rc-guides a{display:flex;flex-direction:column;gap:14px;min-height:220px;border:1px solid var(--rc-line);border-radius:var(--rc-radius-lg);padding:26px;text-decoration:none;color:var(--rc-ink);transition:border-color .2s,transform .2s}
.rc-guides a:hover{border-color:var(--rc-ink);transform:translateY(-3px);color:var(--rc-ink)}
.rc-guides h3{margin:0;font-size:20px}
.rc-more{margin-top:auto;font-weight:600;font-size:14px;color:var(--rc-orange-ink)}
.rc-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px}
.rc-faq h2{margin-top:12px;font-size:clamp(26px,3vw,36px)}

/* ── responsive ───────────────────────────────────────────────── */
@media (max-width:1024px){
  .hero-in,.rc-hero-in{grid-template-columns:1fr}
  .rc-spec{justify-self:center;max-width:520px}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3,.g3,.sector-grid,.testimonials-grid,.team-grid,.rc-inds,.rc-quotes,.rc-guides{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rc-bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rc-tile,.rc-tile--half{grid-column:span 1}
  .rc-tile--big{grid-column:span 2;grid-row:span 1;min-height:380px}
  .rc-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rc-case,.rc-split,.rc-faq{grid-template-columns:1fr}
  .rc-foot-grid{grid-template-columns:1fr 1fr 1fr}
  .rc-foot-brand{grid-column:1/-1}
  .rc-foot-cta{grid-template-columns:1fr}
}
@media (max-width:768px){
  :root{--rc-gutter:18px}
  body{font-size:15.5px}
  .grid-2,.g2,.grid-3,.g3,.grid-4,.sector-grid,.testimonials-grid,.team-grid,.rc-inds,.rc-quotes,.rc-guides,.rc-steps,.rc-bento{grid-template-columns:1fr}
  .grid-2--rev > :first-child{order:0}
  .rc-tile,.rc-tile--half,.rc-tile--big{grid-column:span 1}
  .statbar-in,.rc-stats-in{grid-template-columns:1fr 1fr}
  .stat:nth-child(2),.rc-stat:nth-child(2){border-right:0}
  .stat:nth-child(-n+2),.rc-stat:nth-child(-n+2){border-bottom:1px solid var(--rc-line)}
  .hero-txt > p,.rc-lede{font-size:16px}
  .rc-drop-go{display:none}
  .rc-tag{font-size:11px;padding:7px 10px}
  .tbl-se,.data-table{display:block;overflow-x:auto;white-space:normal}
  .faq-a p{padding-right:0}
  .case-meta{grid-template-columns:1fr 1fr}
  .rc-foot-grid{grid-template-columns:1fr 1fr}
  .rc-foot-contact{grid-column:1/-1}
  .cta-ban{border-radius:var(--rc-radius-lg)}
}
@media (max-width:420px){
  .rc-hdr .rc-btn--sm{padding:8px 14px}
  .rc-kpis{grid-template-columns:1fr 1fr 1fr}
  .rc-kpis b{font-size:22px}
}
