/*
Theme Name: rapiddweller-Blockstudio
Theme URI: https://rapiddweller.com/
Author: rapiddweller
Author URI: https://rapiddweller.com/
Description: Blockstudio block theme for the rapiddweller WordPress website.
Version: 0.1.58
Requires at least: 6.8
Requires PHP: 8.2
Text Domain: rapiddweller-blockstudio
*/

:root {
	--rd-bg: #050607;
	--rd-bg-soft: #0b0d10;
	--rd-surface: #11151a;
	--rd-surface-light: #f3f6f7;
	--rd-text: #f7fbfc;
	--rd-text-muted: #a9b4bb;
	--rd-ink: #101417;
	--rd-accent: #37d9ff;
	--rd-accent-2: #2b7cff;
	--rd-border: rgba(255,255,255,.14);
	--rd-radius: 24px;
	--rd-container: 1280px;
	--rd-gutter: clamp(20px, 4vw, 64px);
	--rd-section: clamp(88px, 11vw, 160px);
	--rd-section-space-y: clamp(72px, 8vw, 112px);
	--rd-section-space-y-compact: clamp(56px, 6vw, 80px);
	--rd-cta-space-y: clamp(96px, 9vw, 136px);
	--rd-shadow: 0 28px 90px rgba(0,0,0,.3);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--rd-bg);
	color: var(--rd-text);
	font-family: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	overflow-x: hidden;
}
a { color: inherit; }
img, video { display: block; max-width: 100%; }
:focus-visible { outline: 3px solid var(--rd-accent); outline-offset: 4px; }
.wp-site-blocks { padding: 0; }
.rd-container { width: min(var(--rd-container), calc(100% - 2 * var(--rd-gutter))); margin-inline: auto; }
.rd-section { position: relative; padding: var(--rd-section) 0; overflow: hidden; }
.rd-legal-page {
	width: 100%;
	max-width: none !important;
	background: #fff;
	color: #323e4f;
}
.rd-legal-page > .wp-block-post-content {
	width: 100%;
	max-width: none !important;
	margin: 0 !important;
}
.rd-legal-hero {
	position: relative;
	isolation: isolate;
	display: flex;
	min-height: min(740px, 82vh);
	align-items: flex-end;
	overflow: hidden;
	background: #050b12;
	color: #fff;
}
.rd-legal-hero__image,
.rd-legal-hero__overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
}
.rd-legal-hero__image { z-index: -2; background: center 35% / cover no-repeat; }
.rd-legal-hero__overlay { z-index: -1; background: linear-gradient(90deg, rgba(0,0,0,.92), rgba(0,0,0,.62) 48%, rgba(0,0,0,.16)), linear-gradient(0deg, #050b12, transparent 35%); }
.rd-legal-hero__inner { width: min(1200px, calc(100% - 40px)); margin: 0 auto; padding: clamp(96px, 14vh, 150px) 0 clamp(72px, 10vh, 110px); }
.rd-legal-hero h1 { max-width: 900px; margin: 0; color: #fff; font-size: clamp(3rem, 5vw, 4rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.05; }
.rd-legal { width: min(840px, calc(100% - 2 * var(--rd-gutter))); margin-inline: auto; padding-block: clamp(64px, 8vw, 112px); color: #525866; font-size: 16px; font-weight: 400; line-height: 24px; }
.rd-legal > :first-child { margin-top: 0; }
.rd-legal h1,
.rd-legal h2,
.rd-legal h3,
.rd-legal h4,
.rd-legal h5 {
	color: #1f363b;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: -.02em;
	text-wrap: balance;
}
.rd-legal h2 strong,
.rd-legal h3 strong,
.rd-legal h4 strong,
.rd-legal h5 strong { font-weight: inherit; }
.rd-legal h1 { margin: 0 0 42px; font-size: clamp(40px, 5vw, 64px); }
.rd-legal h2 {
	margin: 56px 0 18px;
	font-size: clamp(28px, 2.25vw, 32px);
	background: linear-gradient(90deg, #50828e 6.96%, #1f363b 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: #465b66;
}
.rd-legal h3 { margin: 32px 0 12px; color: #181b25; font-size: 21px; line-height: 1.25; }
.rd-legal h4,
.rd-legal h5 { margin: 28px 0 12px; color: #323e4f; font-size: 18px; }
.rd-legal p { margin: 0 0 14px; }
.rd-legal ul,
.rd-legal ol { margin: 0 0 18px; padding-left: 1.4em; }
.rd-legal li + li { margin-top: 9px; }
.rd-legal a { color: #4d7b84; overflow-wrap: anywhere; }
.rd-legal a:hover { color: #1f363b; }
@media (max-width: 768px) {
	.rd-legal-hero { min-height: 680px; }
	.rd-legal,
	.rd-legal-hero h1 { overflow-wrap: anywhere; }
}
.rd-kicker { margin: 0 0 16px; color: #5e949f; font-size: 12px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.rd-kicker--on-light { color: #5e949f; }
.rd-kicker--on-dark { color: #5e949f; }
.rd-title { margin: 0; font-size: clamp(40px, 6vw, 84px); line-height: .98; letter-spacing: -.055em; }
.rd-section-title { margin: 0; font-size: clamp(34px, 4.5vw, 64px); line-height: 1; letter-spacing: -.045em; }
.rd-lead { max-width: 760px; margin: 24px 0 0; color: var(--rd-text-muted); font-size: clamp(17px, 2vw, 21px); line-height: 1.65; }
.rd-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 24px; border: 1px solid var(--rd-accent); border-radius: 999px; background: var(--rd-accent); color: #00141a; font-weight: 800; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.rd-btn:hover { transform: translateY(-2px); box-shadow: 0 12px 36px rgba(55,217,255,.28); }
.rd-btn--ghost { background: transparent; color: var(--rd-text); border-color: rgba(255,255,255,.45); }

.rd-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid var(--rd-border); background: rgba(5,6,7,.88); backdrop-filter: blur(18px); }
.rd-header__inner { display: flex; min-height: 76px; align-items: center; justify-content: space-between; gap: 24px; }
.rd-header .wp-block-site-logo img { width: 178px; height: auto; }
.rd-header .wp-block-navigation { font-size: 14px; font-weight: 700; }
.rd-footer { padding: 72px 0 36px; border-top: 1px solid var(--rd-border); background: #030404; }
.rd-footer__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 48px; }
.rd-footer__brand { max-width: 540px; color: var(--rd-text-muted); line-height: 1.7; }
.rd-footer__meta { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--rd-border); color: #758088; font-size: 13px; }

.rd-hero { min-height: calc(100svh - 76px); display: grid; align-items: center; background: #06080b; }
.rd-hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .42; }
.rd-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,6,7,.96) 0%, rgba(5,6,7,.65) 58%, rgba(5,6,7,.22)), linear-gradient(0deg, #050607 0%, transparent 30%); }
.rd-hero__inner { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 64px; align-items: end; padding-block: 96px; }
.rd-hero__copy { max-width: 880px; }
.rd-hero__text { max-width: 760px; color: #d4dce0; font-size: clamp(17px, 2vw, 21px); line-height: 1.65; }
.rd-hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 36px; }
.rd-hero__labels { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 38px; }
.rd-hero__label { display: inline-flex; align-items: center; gap: 9px; padding: 10px 14px; border: 1px solid var(--rd-border); border-radius: 999px; background: rgba(11,14,17,.72); color: #dce6e9; font-size: 13px; }
.rd-hero__label img { width: 18px; height: 18px; filter: brightness(0) invert(1); }
.rd-hero__nav { display: grid; gap: 4px; padding: 16px; border: 1px solid var(--rd-border); border-radius: 18px; background: rgba(5,6,7,.65); backdrop-filter: blur(14px); }
.rd-hero__nav a { padding: 11px 12px; border-radius: 10px; color: #aeb8bd; font-size: 13px; text-decoration: none; }
.rd-hero__nav a:hover { background: rgba(55,217,255,.12); color: #fff; }

.rd-tech { background: var(--rd-surface-light); color: var(--rd-ink); }
.rd-tech .rd-kicker { color: #5e949f; }
.rd-tech__grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; margin-top: 58px; }
.rd-tech__item { display: grid; min-height: 126px; place-items: center; gap: 12px; padding: 18px; border: 1px solid rgba(8,20,24,.1); border-radius: 50%; background: rgba(255,255,255,.75); box-shadow: 0 14px 32px rgba(15,44,54,.08); text-align: center; }
.rd-tech__item img { width: 44px; height: 44px; object-fit: contain; }
.rd-tech__item span { font-size: 11px; font-weight: 800; }

.rd-portfolio { background: radial-gradient(circle at 72% 18%, rgba(43,124,255,.15), transparent 33%), var(--rd-bg); }
.rd-services { display: grid; grid-template-columns: 340px minmax(0,1fr); gap: 28px; margin-top: 54px; }
.rd-services__tabs { display: grid; gap: 10px; align-content: start; }
.rd-services__tab { display: grid; grid-template-columns: 44px 1fr; gap: 14px; width: 100%; padding: 18px; border: 1px solid var(--rd-border); border-radius: 16px; background: rgba(17,21,26,.72); color: #fff; text-align: left; cursor: pointer; }
.rd-services__tab[aria-selected="true"] { border-color: var(--rd-accent); background: rgba(55,217,255,.1); }
.rd-services__tab img { width: 38px; height: 38px; object-fit: contain; }
.rd-services__tab strong, .rd-services__tab span { display: block; }
.rd-services__tab span { margin-top: 4px; color: var(--rd-text-muted); font-size: 13px; }
.rd-services__panel { min-height: 460px; padding: clamp(28px,4vw,56px); border: 1px solid var(--rd-border); border-radius: var(--rd-radius); background: linear-gradient(145deg, rgba(21,27,34,.96), rgba(8,10,12,.96)); box-shadow: var(--rd-shadow); }
.rd-services__panel[hidden] { display: none; }
.rd-services__eyebrow { color: #5e949f; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.rd-services__panel h3 { max-width: 850px; margin: 18px 0; font-size: clamp(30px,4vw,54px); line-height: 1.03; letter-spacing: -.04em; }
.rd-services__panel p { max-width: 760px; color: var(--rd-text-muted); font-size: 18px; line-height: 1.65; }
.rd-services__benefits { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px 28px; padding: 0; margin: 30px 0; list-style: none; }
.rd-services__benefits li::before { content: "\2197"; margin-right: 10px; color: var(--rd-accent); }
.rd-services__actions { display: flex; flex-wrap: wrap; gap: 12px; }

.rd-founders { background: var(--rd-surface-light); color: var(--rd-ink); }
.rd-founders__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; margin-top: 54px; }
.rd-founder { display: grid; grid-template-columns: 180px 1fr; gap: 28px; padding: 28px; border: 1px solid rgba(8,20,24,.12); border-radius: var(--rd-radius); background: #fff; box-shadow: 0 24px 70px rgba(15,44,54,.1); }
.rd-founder img { width: 180px; aspect-ratio: 1; border-radius: 18px; object-fit: cover; }
.rd-founder h3 { margin: 0; font-size: 28px; }
.rd-founder__role { color: #49717d; font-weight: 700; }
.rd-founder blockquote { margin: 20px 0; color: #3c484d; line-height: 1.65; }
.rd-founder__socials { display: flex; gap: 16px; font-weight: 800; }

.rd-contact { min-height: clamp(680px,78svh,800px); display: grid; align-items: center; background: radial-gradient(ellipse at 50% 42%, rgba(42,211,255,.55) 0%, rgba(24,119,181,.28) 24%, rgba(5,6,7,.92) 65%, #050607 100%); text-align: center; }
.rd-contact::before { content:""; position:absolute; inset:0; opacity:.22; background-image: linear-gradient(rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px); background-size:48px 48px; mask-image:radial-gradient(circle at center,#000,transparent 72%); }
.rd-contact__inner { position:relative; z-index:1; max-width:920px; }
.rd-contact .rd-section-title { font-size:clamp(46px,7vw,96px); text-shadow:0 4px 30px rgba(0,0,0,.55); }
.rd-contact__copy { max-width:760px; margin:28px auto 36px; color:#edf9fc; font-size:clamp(17px,2vw,21px); line-height:1.7; white-space:pre-line; text-shadow:0 2px 14px rgba(0,0,0,.8); }

@media (max-width: 980px) {
	.rd-hero__inner, .rd-services { grid-template-columns: 1fr; }
	.rd-hero__nav { grid-template-columns: repeat(3,1fr); }
	.rd-tech__grid { grid-template-columns: repeat(4,1fr); }
	.rd-founders__grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
	.rd-header__inner { min-height: 64px; }
	.rd-header .wp-block-navigation__responsive-container-open { display: flex; }
	.rd-hero { min-height: auto; }
	.rd-hero__inner { padding-block: 72px; }
	.rd-hero__nav { grid-template-columns: 1fr 1fr; }
	.rd-tech__grid { grid-template-columns: repeat(3,1fr); gap: 10px; }
	.rd-tech__item { min-height: 96px; }
	.rd-services__tabs { grid-template-columns: repeat(4,260px); overflow-x:auto; padding-bottom:8px; }
	.rd-services__benefits, .rd-expertise__grid { grid-template-columns:1fr; }
	.rd-founder { grid-template-columns:1fr; }
	.rd-founder img { width:120px; }
	.rd-footer__grid { grid-template-columns:1fr; }
}
@media (max-width: 480px) {
	.rd-tech__grid { grid-template-columns:repeat(2,1fr); }
	.rd-hero__nav { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior:auto; }
	*, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* Astro reference parity: homepage shell, hero and technology constellation. */
.rd-site-header { position:sticky; top:0; z-index:100; background:rgba(0,0,0,.92); border-bottom:1px solid #333; backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }
.rd-site-nav { display:flex; align-items:center; justify-content:space-between; max-width:1200px; height:64px; margin:0 auto; padding:16px 24px; }
.rd-site-logo { flex:0 0 auto; }
.rd-site-logo img { display:block; width:135px; height:auto; max-width:none; }
.rd-site-links { display:flex; flex:1 1 auto; align-items:center; justify-content:center; gap:32px; }
.rd-site-links a { position:relative; color:#cacfd8; font-size:16px; font-weight:500; letter-spacing:-.02em; line-height:24px; text-decoration:none; }
.rd-site-links a:hover,.rd-site-links a[aria-current="page"] { color:#fff; }
.rd-site-links>a[aria-current="page"],.rd-site-dropdown.is-active>summary { border-radius:4px; background:rgba(255,255,255,.1); box-shadow:0 0 0 6px rgba(255,255,255,.1); }
.rd-site-dropdown { position:relative; }
.rd-site-dropdown summary { position:relative; display:flex; align-items:center; gap:8px; color:#cacfd8; font-size:16px; font-weight:500; letter-spacing:-.02em; line-height:24px; cursor:pointer; list-style:none; }
.rd-site-dropdown summary::-webkit-details-marker { display:none; }
.rd-site-dropdown summary span { display:block; width:7px; height:7px; margin-top:-4px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(45deg); transition:transform .18s ease; }
.rd-site-dropdown[open] summary span { margin-top:4px; transform:rotate(225deg); }
.rd-site-dropdown summary:hover,.rd-site-dropdown[open] summary,.rd-site-dropdown.is-active summary { color:#fff; }
.rd-site-dropdown__panel { position:absolute; top:calc(100% + 16px); left:50%; display:flex; min-width:250px; flex-direction:column; padding:8px; border:1px solid rgba(255,255,255,.14); border-radius:12px; background:#111214; box-shadow:0 18px 45px rgba(0,0,0,.38); transform:translateX(-50%); }
.rd-site-dropdown__panel a { display:block; padding:10px 12px; border-radius:8px; white-space:nowrap; }
.rd-site-dropdown__panel a:hover,.rd-site-dropdown__panel a:focus-visible { background:rgba(255,255,255,.08); }
.rd-site-actions { display:flex; flex:0 0 auto; align-items:center; justify-content:flex-end; gap:16px; }.rd-site-cta,.rd-hero__button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:10px 20px; border:1px solid rgba(255,255,255,.3); border-radius:12px; color:#fff; font-size:14px; font-weight:500; line-height:1.5; letter-spacing:-.02em; text-decoration:none; background:rgba(255,255,255,.05); transition:background-color 180ms ease,border-color 180ms ease; }
.rd-site-cta:hover,.rd-hero__button:hover { border-color:#fff; background:rgba(255,255,255,.1); }
.rd-site-language { color:#cacfd8; font-size:14px; font-weight:500; line-height:24px; letter-spacing:-.02em; text-decoration:none; transition:color 180ms ease; }
.rd-site-language:hover,.rd-site-language:focus-visible { color:#fff; }
.rd-mobile-menu { display:none; position:relative; }.rd-mobile-menu>summary { position:relative; z-index:2; display:grid; width:42px; height:42px; place-content:center; gap:5px; cursor:pointer; list-style:none; border:1px solid rgba(255,255,255,.25); border-radius:12px; }.rd-mobile-menu>summary::-webkit-details-marker { display:none; }.rd-mobile-menu>summary>span { display:block; width:18px; height:1px; background:#fff; transition:transform .2s ease; }.rd-mobile-menu[open]>summary>span:first-child { transform:translateY(6px) rotate(45deg); }.rd-mobile-menu[open]>summary>span:nth-child(2) { opacity:0; }.rd-mobile-menu[open]>summary>span:last-child { transform:translateY(-6px) rotate(-45deg); }.rd-mobile-menu[open]::before { content:""; position:fixed; top:64px; right:0; left:0; z-index:0; height:calc(100vh - 64px); background:rgba(0,0,0,.7); }.rd-mobile-menu__panel { position:fixed; top:64px; right:0; z-index:1; display:flex; width:min(360px,85vw); height:calc(100vh - 64px); flex-direction:column; padding:12px 0; overflow-y:auto; border:0; border-left:1px solid rgba(255,255,255,.08); background:#111214; box-shadow:-20px 0 60px rgba(0,0,0,.5); }.rd-mobile-menu__panel a { display:flex; align-items:center; min-height:54px; padding:14px 24px; border-bottom:1px solid rgba(255,255,255,.04); color:#cacfd8; font-size:17px; font-weight:500; line-height:1.3; letter-spacing:-.01em; text-decoration:none; }.rd-mobile-menu__panel a:hover,.rd-mobile-menu__panel a:focus-visible { color:#fff; background:rgba(255,255,255,.06); }
.rd-mobile-submenu { border-bottom:1px solid rgba(255,255,255,.04); }.rd-mobile-submenu>summary { display:flex; min-height:54px; align-items:center; justify-content:space-between; padding:14px 24px; color:#cacfd8; font-size:17px; font-weight:500; line-height:1.3; letter-spacing:-.01em; cursor:pointer; list-style:none; }.rd-mobile-submenu>summary::-webkit-details-marker { display:none; }.rd-mobile-submenu>summary span { width:8px; height:8px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(45deg); transition:transform 180ms ease; }.rd-mobile-submenu[open]>summary { color:#fff; background:rgba(255,255,255,.04); }.rd-mobile-submenu[open]>summary span { transform:rotate(225deg); }.rd-mobile-submenu__panel { padding:4px 0 8px; background:rgba(0,0,0,.18); }.rd-mobile-submenu__panel a { min-height:46px; padding:11px 24px 11px 40px; border-bottom:0; font-size:15px; }.rd-mobile-menu__panel .rd-mobile-menu__language { align-self:flex-start; min-height:0; margin:12px 24px 10px; padding:0; border:0; border-radius:0; background:transparent; color:#cacfd8; font-size:14px; font-weight:500; line-height:24px; letter-spacing:-.02em; }.rd-mobile-menu__panel .rd-mobile-menu__language:hover,.rd-mobile-menu__panel .rd-mobile-menu__language:focus-visible { color:#fff; background:transparent; }
body:has(.rd-mobile-menu[open]) { overflow:hidden; }
.rd-mobile-menu__panel a[aria-current="page"] { color:#fff; background:rgba(255,255,255,.06); }
.rd-mobile-menu[open]:not(.is-closing)::before { animation:rd-mobile-menu-backdrop-in 260ms ease-out both; }
.rd-mobile-menu[open]:not(.is-closing) .rd-mobile-menu__panel { animation:rd-mobile-menu-panel-in 320ms cubic-bezier(.22,1,.36,1) both; }
.rd-mobile-menu.is-closing::before { animation:rd-mobile-menu-backdrop-out 260ms ease-in both; }
.rd-mobile-menu.is-closing .rd-mobile-menu__panel { animation:rd-mobile-menu-panel-out 280ms cubic-bezier(.55,0,1,.45) both; }
@keyframes rd-mobile-menu-backdrop-in { from { opacity:0; } to { opacity:1; } }
@keyframes rd-mobile-menu-panel-in { from { transform:translate3d(100%,0,0); } to { transform:translate3d(0,0,0); } }
@keyframes rd-mobile-menu-backdrop-out { from { opacity:1; } to { opacity:0; } }
@keyframes rd-mobile-menu-panel-out { from { transform:translate3d(0,0,0); } to { transform:translate3d(100%,0,0); } }
.rd-site-cta[aria-current="page"] { border-color:#fff; background:rgba(255,255,255,.1); }

.rd-hero { position:relative; isolation:isolate; display:flex; align-items:center; justify-content:center; width:100%; min-height:calc(100svh - 64px); padding:clamp(64px,10vh,96px) 0; overflow:hidden; background:#0a0a0f; }
.rd-hero__media,.rd-hero__overlay { position:absolute; inset:0; pointer-events:none; }
.rd-hero__media { z-index:0; overflow:hidden; }.rd-hero__video { width:100%; height:100%; object-fit:cover; opacity:1; }.rd-hero__overlay { z-index:1; background:#0a0a0f; opacity:.85; }
.rd-hero__inner { position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; justify-content:center; width:min(100%,1200px); margin:0 auto; padding:0 24px; gap:clamp(32px,7vh,64px); }
.rd-hero__columns { display:flex; flex-direction:row-reverse; align-items:center; width:100%; gap:40px; }.rd-hero__content { display:flex; flex:1 1 0; flex-direction:column; align-items:flex-start; gap:24px; min-width:0; }.rd-hero__title-row { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.rd-hero__logo { width:100px; height:100px; object-fit:contain; flex:none; }.rd-hero__title { margin:0; color:#fff; font-size:clamp(3rem,5vw,61px); font-weight:500; line-height:1.26; letter-spacing:-.02em; text-shadow:0 2px 20px rgba(0,0,0,.3); }.rd-hero__description { max-width:646px; margin:0; color:#d4d6dc; font-size:18px; font-weight:400; line-height:1.4; }.rd-hero__button { border-radius:12px; }
.rd-hero__nav { --rd-dot:20px; --rd-hit:44px; --rd-gap:clamp(24px,6vh,48px); --rd-line:2px; position:fixed; top:50%; right:clamp(14px,2vw,28px); z-index:9999; display:flex; flex-direction:column; align-items:center; gap:var(--rd-gap); padding:4px; border-radius:12px; color:#fff; background:rgba(20,20,20,.35); box-shadow:0 5px 15px rgba(0,0,0,.35); backdrop-filter:blur(6px); opacity:0; pointer-events:none; transform:translate(120px,-50%); transition:opacity .38s ease,transform .38s ease; }.rd-hero__nav.is-static { position:relative; top:auto; right:auto; flex:0 0 38%; align-self:center; gap:var(--rd-gap); padding:0; border-radius:0; background:transparent; box-shadow:none; backdrop-filter:none; opacity:1; pointer-events:auto; transform:none; }.rd-hero__nav.is-sticky { --rd-dot:14px; --rd-hit:40px; --rd-gap:20px; --rd-line:1px; }.rd-hero__nav.is-sticky.is-visible { opacity:1; pointer-events:auto; transform:translate(0,-50%); }.rd-hero__nav a { position:relative; display:grid; width:var(--rd-hit); height:var(--rd-hit); place-items:center; border-radius:999px; color:currentColor; text-decoration:none; }.rd-hero__nav a::before { content:""; width:var(--rd-dot); height:var(--rd-dot); border-radius:50%; box-shadow:inset 0 0 0 2px currentColor; background:transparent; transition:transform .22s ease,box-shadow .22s ease; }.rd-hero__nav a:not(:last-child)::after { content:""; position:absolute; top:calc(50% + var(--rd-dot)/2 + 2px); left:50%; width:var(--rd-line); height:calc(var(--rd-gap) + var(--rd-hit) - var(--rd-dot) - 4px); background:currentColor; opacity:.7; transform:translateX(-50%); }.rd-hero__nav-label { position:absolute; right:calc(100% + 14px); top:50%; color:currentColor; font-size:24px; font-weight:600; line-height:1.06; white-space:nowrap; opacity:.55; transform:translateY(-50%) scale(.98); transition:opacity .22s ease,transform .22s ease; }.rd-hero__nav a:hover::before,.rd-hero__nav a.is-active::before { transform:scale(1.2); box-shadow:inset 0 0 0 3px currentColor; }.rd-hero__nav a:hover .rd-hero__nav-label,.rd-hero__nav a.is-active .rd-hero__nav-label { opacity:1; transform:translateY(-50%) scale(1.03); }.rd-hero__nav.is-sticky .rd-hero__nav-label { padding:.35em .6em; border-radius:10px; background:rgba(20,20,20,.42); box-shadow:0 5px 15px rgba(0,0,0,.35); font-size:16px; opacity:0; }.rd-hero__nav.is-sticky a:hover .rd-hero__nav-label,.rd-hero__nav.is-sticky a.is-active .rd-hero__nav-label { opacity:.96; transform:translateY(-50%) scale(1); }.rd-hero__nav.is-on-light { color:#182b35; background:rgba(255,255,255,.78); box-shadow:0 5px 18px rgba(41,52,66,.16); }.rd-hero__nav.is-on-light .rd-hero__nav-label { background:rgba(255,255,255,.9); }
.rd-hero__labels { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; width:76.12%; margin:0 auto; gap:60px; }.rd-hero__label { display:flex; flex-direction:column; align-items:center; justify-content:center; width:152px; padding:26px 0; gap:8px; border:1px solid rgba(255,255,255,.16); border-radius:18px; background:rgba(15,17,22,.64); color:#fff; font-size:14px; font-weight:500; }.rd-hero__label img { width:56px; height:56px; object-fit:contain; filter:brightness(0) invert(1); }

.rd-tech { position:relative; isolation:isolate; width:100%; min-height:100svh; overflow:hidden; color:#354a56; background:radial-gradient(circle at 18% 24%,rgba(94,148,159,.16),transparent 30%),radial-gradient(circle at 82% 72%,rgba(98,91,173,.14),transparent 32%),#f7f8f8; }.rd-tech__glow { position:absolute; inset:20% 25%; z-index:-1; border-radius:50%; background:rgba(255,255,255,.72); filter:blur(80px); }.rd-tech__inner { position:relative; display:grid; place-items:center; width:min(100%,1440px); min-height:inherit; margin:0 auto; padding:64px 40px; }.rd-tech__heading { position:relative; z-index:2; max-width:560px; padding:48px 56px; text-align:center; }.rd-tech__heading p { margin:0 0 12px; color:#596772; font:500 13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.16em; text-transform:uppercase; }.rd-tech__heading h2 { margin:0; font-size:clamp(2.25rem,4vw,3.5rem); font-weight:500; line-height:1.05; letter-spacing:-.04em; background:linear-gradient(90deg,#5e949f,#526070); -webkit-background-clip:text; background-clip:text; color:transparent; }
.rd-tech__grid { position:absolute; inset:clamp(32px,5vw,72px); display:grid; grid-template-columns:repeat(8,1fr); grid-template-rows:repeat(4,1fr); gap:clamp(8px,1.5vw,22px); margin:0; padding:0; list-style:none; }.rd-tech__item { position:relative; display:grid; width:clamp(70px,7vw,100px); align-self:center; justify-self:center; aspect-ratio:1; animation:rd-partner-float 6.8s ease-in-out infinite; }.rd-tech__item:nth-child(-n+8){grid-row:1}.rd-tech__item:nth-child(9){grid-area:2/1}.rd-tech__item:nth-child(10){grid-area:2/2}.rd-tech__item:nth-child(11){grid-area:2/7}.rd-tech__item:nth-child(12){grid-area:2/8}.rd-tech__item:nth-child(13){grid-area:3/1}.rd-tech__item:nth-child(14){grid-area:3/2}.rd-tech__item:nth-child(15){grid-area:3/7}.rd-tech__item:nth-child(16){grid-area:3/8}.rd-tech__item:nth-child(n+17){grid-row:4}.rd-tech__item:nth-child(3n){animation-duration:7.7s;animation-delay:-2.6s}.rd-tech__item:nth-child(3n+1){animation-duration:6.3s;animation-delay:-4.1s}.rd-tech__item:nth-child(4n){animation-duration:8.2s;animation-delay:-1.4s}.rd-tech__item>div { display:grid; place-items:center; width:100%; height:100%; padding:clamp(14px,1.6vw,22px); border:1px solid rgba(82,88,102,.18); border-radius:50%; background:rgba(255,255,255,.58); box-shadow:0 16px 45px rgba(41,52,66,.1); backdrop-filter:blur(14px); }.rd-tech__item img { width:100%; height:100%; max-height:52px; object-fit:contain; filter:grayscale(1); opacity:.56; transition:filter .24s ease,opacity .24s ease; }.rd-tech__item:hover img { filter:grayscale(0); opacity:1; } @keyframes rd-partner-float {0%,100%{transform:translate3d(0,0,0) rotate(-.4deg)}50%{transform:translate3d(0,-12px,0) rotate(.5deg)}}
.rd-hero::after { display:none; }.rd-tech__item { min-height:0; padding:0; gap:0; border:0; background:transparent; box-shadow:none; text-align:initial; }.rd-tech__item img { min-width:0; }

@media (max-width:1024px){.rd-site-nav{padding:12px 24px}.rd-site-links{display:none}.rd-site-dropdown__panel{display:none}.rd-mobile-menu{display:block}.rd-site-language{display:none}.rd-mobile-menu__language{display:flex}.rd-hero__labels{width:100%;gap:40px}.rd-hero__label{width:111px;padding:21px 0}.rd-tech__inner{padding-inline:24px}.rd-tech__heading{max-width:340px;padding:28px 24px}.rd-tech__item{width:clamp(62px,8vw,86px)}}
@media (max-width:768px){.rd-hero__nav{display:none}}
@media (max-width:700px){.rd-site-nav{height:auto;padding:12px 16px}.rd-site-logo img{width:135px;height:auto}.rd-site-cta{min-height:38px;padding:0 14px;font-size:13px}.rd-hero{min-height:100svh;padding:48px 16px}.rd-hero__title-row{flex-direction:column;align-items:flex-start;gap:12px}.rd-hero__logo{width:64px;height:64px}.rd-hero__title{font-size:2.5rem}.rd-hero__description{font-size:16px}.rd-hero__labels{justify-content:flex-start;gap:16px}.rd-hero__label{width:100px;padding:12px 0}.rd-hero__label img{width:32px;height:32px}.rd-tech__inner{padding:24px 14px}.rd-tech__heading{max-width:52%;padding:12px 6px}.rd-tech__heading p{display:none}.rd-tech__heading h2{font-size:clamp(1.75rem,8vw,2.4rem)}.rd-tech__grid{inset:24px 14px;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(7,1fr);gap:6px}.rd-tech__grid>.rd-tech__item{grid-column:auto;grid-row:auto;width:clamp(48px,15vw,64px)}.rd-tech__grid>.rd-tech__item:nth-child(-n+4){grid-row:1}.rd-tech__grid>.rd-tech__item:nth-child(n+5):nth-child(-n+8){grid-row:2}.rd-tech__grid>.rd-tech__item:nth-child(9){grid-area:3/1}.rd-tech__grid>.rd-tech__item:nth-child(10){grid-area:3/4}.rd-tech__grid>.rd-tech__item:nth-child(11){grid-area:4/1}.rd-tech__grid>.rd-tech__item:nth-child(12){grid-area:4/4}.rd-tech__grid>.rd-tech__item:nth-child(n+13):nth-child(-n+16){grid-row:5}.rd-tech__grid>.rd-tech__item:nth-child(n+17):nth-child(-n+20){grid-row:6}.rd-tech__grid>.rd-tech__item:nth-child(n+21){grid-row:7}.rd-tech__item>div{padding:11px}.rd-tech__item img{max-height:34px}}

/* Astro reference parity: portfolio window, founder cards and contact scene. */
.rd-portfolio { min-height:100svh; padding-block:clamp(56px,8vh,64px); background:#07090c; }.rd-portfolio .rd-container { max-width:1440px; }.rd-portfolio .rd-section-title { max-width:720px; font-size:clamp(2rem,3.4vw,3rem); }.rd-portfolio .rd-lead { max-width:none; margin:12px 0 56px; font-size:16px; line-height:24px; }.rd-services { display:grid; grid-template-columns:1fr; gap:24px; margin-top:0; }.rd-services__tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; gap:20px; }.rd-services__tab { grid-template-columns:40px minmax(0,1fr); min-height:76px; height:100%; padding:12px 14px; border-color:rgba(255,255,255,.12); border-radius:14px; background:transparent; }.rd-services__tab[aria-selected="true"] { color:#fff; border-color:#5e949f; background:linear-gradient(90deg,rgba(94,148,159,.18),rgba(255,255,255,.04)); }.rd-services__tab img { width:32px; height:32px; filter:brightness(0) saturate(100%) invert(84%) sepia(8%) saturate(214%) hue-rotate(182deg) brightness(97%) contrast(91%); }.rd-services__tab[aria-selected="true"] img { filter:brightness(0) saturate(100%) invert(60%) sepia(17%) saturate(975%) hue-rotate(141deg) brightness(91%) contrast(87%); }.rd-services__tab strong { font-size:14px; line-height:1.25; }.rd-services__tab span span { overflow:hidden; margin-top:2px; color:#a4acb4; font-size:12px; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }.rd-services__panel { position:relative; display:block; height:clamp(450px,58vh,560px); min-height:450px; padding:clamp(24px,4vw,52px); overflow:hidden; color:#fff; background:radial-gradient(circle at 88% 6%,rgba(94,148,159,.26),transparent 37%),linear-gradient(135deg,#171c22,#07090c 72%); border-color:rgba(255,255,255,.18); border-radius:24px; box-shadow:none; }.rd-services__panel h3 { position:relative; z-index:1; max-width:680px; margin:12px 0 18px; font-size:clamp(1.9rem,3vw,3rem); line-height:1.08; }.rd-services__panel p,.rd-services__benefits,.rd-services__actions,.rd-services__eyebrow { position:relative; z-index:1; }.rd-services__panel p { max-width:580px; font-size:16px; line-height:1.6; }.rd-services__benefits { display:grid; grid-template-columns:1fr; gap:10px; margin:28px 0; }.rd-services__benefits li::before { content:"\2713"; color:#a7dce3; }.rd-services__watermark { position:absolute; right:clamp(18px,4vw,52px); bottom:clamp(18px,4vw,52px); z-index:0; width:clamp(180px,28%,280px); height:auto; opacity:.5; filter:brightness(0) saturate(100%) invert(60%) sepia(17%) saturate(975%) hue-rotate(141deg) brightness(91%) contrast(87%); -webkit-mask-image:linear-gradient(to right,#000 0,#000 42%,rgba(0,0,0,.72) 62%,transparent 100%); mask-image:linear-gradient(to right,#000 0,#000 42%,rgba(0,0,0,.72) 62%,transparent 100%); }
.rd-founders { min-height:100svh; padding-block:clamp(56px,8vh,64px); background:radial-gradient(circle at 18% 24%,rgba(94,148,159,.16),transparent 30%),radial-gradient(circle at 82% 72%,rgba(98,91,173,.14),transparent 32%),#f7f8f8; }.rd-founders .rd-container { display:flex; flex-direction:column; align-items:center; }.rd-founders .rd-section-title { margin-bottom:60px; color:#465b66; font-size:clamp(2.25rem,4vw,3.5rem); font-weight:500; }.rd-founders__grid { display:flex; justify-content:center; gap:32px; margin:0; }.rd-founder { display:flex; flex-direction:column; width:340px; padding:20px; gap:0; border:1px solid rgba(16,20,23,.08); border-radius:14px; background:rgba(255,255,255,.12); box-shadow:none; }.rd-founder>img { width:100%; height:300px; aspect-ratio:auto; border-radius:12px; object-fit:cover; filter:grayscale(1); }.rd-founder__info { padding-top:16px; }.rd-founder h3 { margin:0; color:#5b808b; font-size:25px; font-weight:500; }.rd-founder__role { margin:8px 0 10px; color:#26333a; font-size:15px; font-weight:500; }.rd-founder__divider { height:1px; background:rgba(16,20,23,.55); }.rd-founder__quote { display:inline-block; margin-top:22px; }.rd-founder__quote summary { color:#182126; cursor:pointer; font-size:16px; list-style:none; }.rd-founder__quote summary::-webkit-details-marker { display:none; }.rd-founder__quote blockquote { max-width:300px; margin:16px 0 0; color:#3c484d; font-size:14px; line-height:1.55; }.rd-founder__socials { display:flex; float:right; gap:16px; margin-top:20px; }.rd-founder__socials a { display:grid; place-items:center; width:26px; height:26px; color:#303a46; font-size:19px; font-weight:800; text-decoration:none; }.rd-founder__socials a:last-child { border:1px solid #303a46; font-size:14px; }
.rd-contact { display:block; min-height:clamp(680px,78svh,800px); padding:0; color:#fff; text-align:center; background:linear-gradient(180deg,transparent 0%,transparent 44%,rgba(0,0,0,.14) 55%,rgba(0,0,0,.56) 73%,#000 92%),linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.12) 8%,transparent 17%),radial-gradient(ellipse 94% 88% at 100% 0%,#82e7ff 0%,rgba(130,231,255,.78) 34%,rgba(19,163,198,.38) 72%,transparent 100%),#000; }.rd-contact::before { inset:-8%; opacity:.72; background-image:linear-gradient(rgba(189,246,255,.42) 1px,transparent 1px),linear-gradient(90deg,rgba(189,246,255,.42) 1px,transparent 1px),radial-gradient(circle,rgba(255,255,255,.18) .6px,transparent .8px); background-size:67px 72px,67px 72px,3px 3px; mask-image:linear-gradient(180deg,#000 0%,#000 42%,rgba(0,0,0,.68) 58%,transparent 76%); }.rd-contact__inner { display:flex; flex-direction:column; align-items:center; width:min(100%,620px); min-height:inherit; padding:clamp(120px,14vh,152px) 24px 104px; }.rd-contact .rd-kicker { color:#5e949f; font:500 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }.rd-contact .rd-section-title { max-width:620px; font-size:clamp(2.5rem,4.5vw,4.5rem); font-weight:500; line-height:.98; letter-spacing:-.045em; }.rd-contact__copy { max-width:560px; margin:22px auto 28px; font-size:16px; line-height:1.65; }.rd-contact__form { display:flex; width:min(100%,420px); min-height:54px; overflow:hidden; border:1px solid rgba(255,255,255,.6); border-radius:14px; background:rgba(0,0,0,.3); }.rd-contact__form input { min-width:0; flex:1; border:0; outline:0; padding:0 16px; color:#fff; background:transparent; font:inherit; }.rd-contact__form input::placeholder { color:rgba(255,255,255,.7); }.rd-contact__form button { border:0; padding:0 18px; color:#071114; background:#a9f0ff; font:600 14px inherit; cursor:pointer; }
@media (max-width:800px){.rd-services__tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.rd-services__panel{height:auto;min-height:490px}.rd-founders__grid{flex-wrap:wrap}.rd-founder{width:min(340px,100%)} }
@media (max-width:460px){.rd-services__tabs{grid-template-columns:1fr}.rd-services__panel{min-height:auto}.rd-services__watermark{width:180px;right:12px;bottom:12px}.rd-contact__form{flex-direction:column;min-height:0}.rd-contact__form input,.rd-contact__form button{min-height:52px}.rd-contact__form button{border-top:1px solid rgba(255,255,255,.3)}}

/* Exact Astro dots-neo side-navigation contract. */
.dots-neo { --dots-c:#fff; --dot:20px; --ring:2px; --hit:44px; --gap:48px; --line-w:2px; --label-gap:14px; --label-size:24px; --label-rest-scale:.98; --glass-bg:rgba(20,20,20,.35); --glass-shadow:0 5px 15px rgba(0,0,0,.35); --glass-blur:6px; --label-gap-sticky:16px; position:fixed; right:clamp(14px,2vw,28px); top:50%; z-index:9999; display:flex; flex-direction:column; align-items:center; gap:var(--gap); padding:4px; border-radius:12px; color:var(--dots-c)!important; background:var(--glass-bg); box-shadow:var(--glass-shadow); backdrop-filter:blur(var(--glass-blur)); -webkit-backdrop-filter:blur(var(--glass-blur)); opacity:0; pointer-events:none; transform:translateY(-50%); transition:opacity .38s cubic-bezier(.2,.7,.2,1),transform .38s cubic-bezier(.2,.7,.2,1),right .38s cubic-bezier(.2,.7,.2,1); }
.dots-neo.is-static { position:relative; right:auto; top:auto; flex:0 0 38%; align-self:center; gap:clamp(24px,6vh,var(--gap)); padding:0; border-radius:0; background:transparent; box-shadow:none; backdrop-filter:none; -webkit-backdrop-filter:none; opacity:1; pointer-events:auto; transform:none; transition:none; }.dots-neo.is-sticky { --dot:14px; --hit:40px; --gap:20px; --line-w:1px; --label-size:16px; position:fixed; right:clamp(14px,2vw,28px); top:50%; padding:4px; border-radius:12px; background:var(--glass-bg); box-shadow:var(--glass-shadow); backdrop-filter:blur(var(--glass-blur)); -webkit-backdrop-filter:blur(var(--glass-blur)); opacity:0; transform:translate(120px,-50%); }.dots-neo.is-sticky.is-visible { opacity:1; pointer-events:auto; transform:translate(0,-50%); }
.dots-neo a { position:relative; display:grid; width:var(--hit); height:var(--hit); place-items:center; border-radius:999px; color:currentColor!important; text-align:initial; }.dots-neo a::before { content:""; width:var(--dot); height:var(--dot); border-radius:999px; box-shadow:inset 0 0 0 var(--ring) currentColor; background:transparent; opacity:.92; transition:transform .22s cubic-bezier(.2,.7,.2,1),opacity .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s cubic-bezier(.2,.7,.2,1); }.dots-neo a:not(:last-child)::after { content:""; position:absolute; left:calc(var(--hit)/2); top:calc(50% + var(--dot)/2 + var(--ring)); width:var(--line-w); height:calc(var(--gap) + var(--hit) - var(--dot) - var(--ring)*2); background:currentColor; opacity:.7; pointer-events:none; transform:translateX(-50%); }.dots-neo a .label { position:absolute; right:calc(100% + var(--label-gap)); top:50%; color:currentColor!important; font:600 var(--label-size)/1.06 Inter,ui-sans-serif,system-ui,sans-serif; letter-spacing:-.01em; white-space:nowrap; opacity:.55; pointer-events:none; filter:brightness(.92); transform:translateY(-50%) scale(var(--label-rest-scale)); transition:opacity .22s cubic-bezier(.2,.7,.2,1),transform .22s cubic-bezier(.2,.7,.2,1),filter .22s cubic-bezier(.2,.7,.2,1),background .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s cubic-bezier(.2,.7,.2,1); }.dots-neo a:hover .label,.dots-neo a:focus-visible .label,.dots-neo a.is-active .label { opacity:1; filter:brightness(1); transform:translateY(-50%) scale(1.03); }.dots-neo a:hover::before,.dots-neo a:focus-visible::before,.dots-neo a.is-active::before { opacity:1; transform:scale(1.2); box-shadow:inset 0 0 0 calc(var(--ring) + 1px) currentColor; }
.dots-neo.is-sticky.is-on-light { --glass-bg:rgba(255,255,255,.78); --glass-shadow:0 5px 18px rgba(41,52,66,.16); color:#293442!important; }.dots-neo.is-sticky a .label { right:calc(100% + var(--label-gap-sticky)); padding:.35em .6em; border-radius:10px; background:var(--glass-bg); box-shadow:var(--glass-shadow); backdrop-filter:blur(var(--glass-blur)); -webkit-backdrop-filter:blur(var(--glass-blur)); opacity:0; transform:translateY(-50%) scale(.98); }.dots-neo.is-sticky a:hover .label,.dots-neo.is-sticky a:focus-visible .label,.dots-neo.is-sticky a.is-active .label { background:rgba(20,20,20,.42); box-shadow:var(--glass-shadow); opacity:.96; transform:translateY(-50%) scale(1); }.dots-neo.is-sticky.is-on-light a:hover .label,.dots-neo.is-sticky.is-on-light a:focus-visible .label,.dots-neo.is-sticky.is-on-light a.is-active .label { background:rgba(255,255,255,.9); }.dots-neo.is-sticky a::after { opacity:.9; }.dots-neo.is-sticky a::before { box-shadow:inset 0 0 0 var(--ring) currentColor,0 1px 2px rgba(0,0,0,.18); }
@media (max-width:768px){.dots-neo.is-sticky{display:none}}

/* Keep the sidebar on one dark glass treatment across every section. */
.rd-hero__nav.is-on-light,
.dots-neo.is-sticky.is-on-light {
  color: #fff !important;
  background: rgba(20,20,20,.35);
  box-shadow: 0 5px 15px rgba(0,0,0,.35);
}
.rd-hero__nav.is-on-light .rd-hero__nav-label,
.dots-neo.is-sticky.is-on-light a .label,
.dots-neo.is-sticky.is-on-light a:hover .label,
.dots-neo.is-sticky.is-on-light a:focus-visible .label,
.dots-neo.is-sticky.is-on-light a.is-active .label {
  background: rgba(20,20,20,.42);
  box-shadow: 0 5px 15px rgba(0,0,0,.35);
}
.rd-hero__nav.dots-neo.is-static {
	border:0;
}
.rd-hero__nav.dots-neo.is-static a .label {
	pointer-events:auto;
	cursor:pointer;
}

/* Strict Astro homepage parity overrides. */
.wp-site-blocks { gap:0!important; padding-top:64px; }.wp-site-blocks>* { margin-block-start:0!important; }.rd-site-header { position:fixed; inset:0 0 auto; width:100%; }.rd-site-nav { height:64px; padding:16px 24px; }.rd-hero { min-height:100vh; min-height:100svh; }.rd-hero__nav-col { position:relative; display:flex; flex:0 0 38%; align-items:center; justify-content:flex-end; }.rd-hero__nav.dots-neo.is-static { flex:none; align-self:auto; }.rd-tech,.rd-founders { background-color:#f5f5f5; }
body.admin-bar .rd-site-header { top:32px; }
@media screen and (max-width:782px) {
	body.admin-bar .rd-site-header { top:46px; }
}
@media screen and (max-width:600px) {
	body.admin-bar #wpadminbar { position:fixed; }
}
.rd-expertise { min-height:100vh; min-height:100svh; padding:0; overflow:hidden; background:#000; }.rd-expertise__inner { display:flex; min-height:inherit; flex-direction:column; align-items:stretch; justify-content:center; padding:clamp(40px,6vh,64px) 24px; }.rd-expertise .rd-section-title { align-self:flex-start; margin:0 0 12px; font-size:clamp(2rem,3.4vw,3rem); font-weight:500; line-height:1.05; letter-spacing:-.04em; background:linear-gradient(90deg,#fff 6.96%,#50828e 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }.rd-expertise .rd-lead { align-self:flex-start; max-width:760px; margin:0 0 clamp(24px,4vh,40px); color:#fff; font-size:15px; line-height:24px; }.rd-expertise__grid { display:grid; grid-template-columns:repeat(2,1fr); align-items:stretch; gap:clamp(18px,3vh,28px) 24px; width:100%; margin:0; }.rd-expertise__card { position:relative; z-index:1; display:flex; min-height:0; flex-direction:column; gap:20px; padding:clamp(24px,3vw,32px); overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:linear-gradient(145deg,#151515,#080808); color:#fff; }.rd-expertise__heading { display:flex; align-items:center; gap:16px; }.rd-expertise__heading img { width:40px; height:40px; flex:none; object-fit:contain; filter:brightness(0) invert(1); }.rd-expertise__card h3 { margin:0; color:#fff; font-size:20px; font-weight:500; line-height:1.35; letter-spacing:-.01em; }.rd-expertise__card ul { display:flex; flex-direction:column; gap:12px; margin:0; padding:0; list-style:none; }.rd-expertise__card li { display:flex; align-items:flex-start; gap:8px; color:#b8bec6; font-size:16px; line-height:1.45; }.rd-expertise__card li>span:first-child { flex:none; color:#a7dce3; }
.contact-us { --dm-cyan:130,231,255; --dm-blue:19,163,198; --dm-grid-width:67px; --dm-grid-height:72px; position:relative; isolation:isolate; box-sizing:border-box; width:100%; height:810px; min-height:810px; max-height:810px; overflow:hidden; background:linear-gradient(180deg,transparent 0%,transparent 44%,rgba(0,0,0,.14) 55%,rgba(0,0,0,.56) 73%,#000 92%,#000 100%),linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.12) 8%,transparent 17%),radial-gradient(ellipse 94% 88% at 100% 0%,rgba(var(--dm-cyan),1) 0%,rgba(var(--dm-cyan),.78) 34%,rgba(var(--dm-blue),.38) 72%,transparent 100%),radial-gradient(ellipse 42% 54% at 100% 0%,rgba(255,255,255,.48) 0%,rgba(var(--dm-cyan),.24) 54%,transparent 94%),#000; color:#fff; }.contact-us::after { content:""; position:absolute; z-index:0; inset:-8%; pointer-events:none; background-image:linear-gradient(rgba(189,246,255,.42) 1px,transparent 1px),linear-gradient(90deg,rgba(189,246,255,.42) 1px,transparent 1px),radial-gradient(circle,rgba(255,255,255,.18) .6px,transparent .8px); background-size:var(--dm-grid-width) var(--dm-grid-height),var(--dm-grid-width) var(--dm-grid-height),3px 3px; mask-image:linear-gradient(180deg,#000 0%,#000 42%,rgba(0,0,0,.68) 58%,transparent 76%,transparent 100%); opacity:.72; }.contact-us__inner { position:relative; z-index:2; display:flex; min-height:inherit; align-items:flex-start; justify-content:center; width:min(100%,1440px); margin:0 auto; padding:clamp(120px,14vh,152px) clamp(24px,5vw,80px) 104px; }.contact-us__copy { display:flex; width:min(100%,620px); flex-direction:column; align-items:center; text-align:center; }.contact-us__eyebrow { margin:0 0 18px; color:#5e949f; font:500 12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }.contact-us__title { max-width:620px; margin:0; color:#fff; font-size:clamp(2.5rem,4.5vw,4.5rem); font-weight:500; line-height:.98; letter-spacing:-.045em; text-shadow:0 1px 2px rgba(0,0,0,.72),0 4px 24px rgba(0,0,0,.48); }.contact-us__content { width:100%; max-width:560px; margin-top:24px; color:#f1f6f7; font-size:16px; line-height:1.5; text-shadow:0 1px 2px rgba(0,0,0,.9),0 2px 10px rgba(0,0,0,.55); }.contact-us__content p { margin:0; }.contact-us__content strong { color:#fff; font-weight:500; }.contact-us__form { position:relative; width:min(100%,9rem); height:48px; margin-top:32px; transition:width 360ms cubic-bezier(.2,.75,.2,1); }.contact-us__form.is-expanded { width:min(100%,26rem); }.contact-us__trigger,.contact-us__field { position:absolute; inset:0; width:100%; height:100%; }.contact-us__trigger { z-index:2; display:inline-flex; align-items:center; justify-content:space-between; gap:12px; padding:0 16px 0 20px; border:1px solid rgba(255,255,255,.38); border-radius:12px; background:rgba(255,255,255,.05); color:#fff; font:500 14px/1 Inter,sans-serif; cursor:pointer; }.contact-us__trigger svg,.contact-us__submit svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }.contact-us__form.is-expanded .contact-us__trigger { opacity:0; pointer-events:none; transform:scale(.96); }.contact-us__field { z-index:1; display:flex; align-items:center; overflow:hidden; border:1px solid rgba(255,255,255,.35); border-radius:12px; background:rgba(8,9,11,.82); opacity:0; pointer-events:none; transform:scaleX(.36); transform-origin:left center; transition:opacity 160ms ease,transform 360ms cubic-bezier(.2,.75,.2,1); }.contact-us__form.is-expanded .contact-us__field { opacity:1; pointer-events:auto; transform:scaleX(1); }.contact-us__field input { min-width:0; height:100%; flex:1; padding:0 8px 0 16px; border:0; outline:0; background:transparent; color:#fff; font:400 15px/1 Inter,sans-serif; }.contact-us__submit { display:grid; width:48px; height:100%; flex:0 0 48px; place-items:center; border:0; border-left:1px solid rgba(255,255,255,.28); background:transparent; color:#fff; cursor:pointer; }.contact-us__sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.rd-source-footer { position:relative; isolation:isolate; min-width:0; overflow:hidden; border-top:1px solid rgba(255,255,255,.72); background:linear-gradient(180deg,transparent 0%,transparent 8%,rgba(0,0,0,.2) 34%,rgba(0,0,0,.74) 72%,#000 100%),linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.18) 7%,rgba(0,0,0,.04) 12%,transparent 16%),radial-gradient(circle clamp(360px,52vw,680px) at 100% 18%,rgba(130,231,255,.48) 0%,rgba(130,231,255,.25) 30%,rgba(19,163,198,.14) 64%,transparent 100%),#000; }.rd-source-footer__inner { position:relative; z-index:1; max-width:1200px; min-width:0; margin:0 auto; padding:60px 120px 32px; }.rd-source-footer__legal { position:relative; display:flex; align-items:center; justify-content:space-between; padding-bottom:32px; margin-bottom:32px; }.rd-source-footer__legal::after { content:""; position:absolute; inset:auto 0 0; height:1px; background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.38) 32%,rgba(94,148,159,.9) 72%,rgba(94,148,159,0)); }.rd-source-footer__logo img { display:block; width:auto; height:40px; }.rd-source-footer__legal nav { display:flex; gap:8px; align-items:center; }.rd-source-footer a { color:#cacfd8; text-decoration:none; transition:color 120ms ease; }.rd-source-footer a:hover { color:#fff; }.rd-source-footer__legal nav span { color:rgba(255,255,255,.3); font-size:14px; }.rd-source-footer__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; }.rd-source-footer__grid section { margin-right:32px; }.rd-source-footer__grid section:last-child { margin-right:0; }.rd-source-footer h3 { margin:0 0 16px; color:#fff; font-size:16px; font-weight:600; line-height:1.3; letter-spacing:-.02em; }.rd-source-footer p { margin:0; color:#fff; font-size:14px; line-height:1.7; }.rd-source-footer__copyright { margin-top:32px!important; padding-top:24px; border-top:1px solid rgba(255,255,255,.16); color:#8e979f!important; font-size:12px!important; line-height:1.5!important; text-align:center; }.rd-source-footer li,.rd-source-footer__grid a { font-size:14px; line-height:1.5; }.rd-source-footer ul { margin:0; padding:0; list-style:none; }.rd-source-footer li { margin-bottom:6px; }.rd-source-footer a:focus-visible { outline:2px solid #7ad7d2; outline-offset:3px; }
@media(max-width:1100px){.rd-source-footer__inner{padding:48px 48px 32px}.rd-source-footer__grid{grid-template-columns:1fr 1fr;gap:32px}.rd-source-footer__grid section{margin-right:0}}
@media(max-width:1024px){.rd-site-nav{padding-inline:24px}.rd-site-links{display:none}.rd-mobile-menu{display:block}.rd-expertise__card{padding:24px}.rd-source-footer__inner{padding:40px 32px 28px}}
@media(max-width:768px){.rd-site-nav{height:auto;padding:12px 16px}.rd-site-logo img{width:135px;height:auto}.rd-expertise__grid{gap:16px}.contact-us{height:810px;min-height:810px;max-height:810px}.contact-us__inner{justify-content:center;padding:88px 24px}.contact-us__form{align-self:stretch}.rd-source-footer__inner{padding:32px 24px 24px}.rd-source-footer__grid{gap:24px}.rd-source-footer__legal{padding-bottom:24px;margin-bottom:24px}.rd-source-footer__legal nav{gap:12px}}
@media(max-width:640px){.rd-site-logo img{width:135px;height:auto}.rd-site-actions{gap:12px}.rd-site-cta{min-height:38px;padding:8px 14px;font-size:13px}.rd-expertise__grid{grid-template-columns:1fr}.rd-source-footer__inner{padding:32px 20px 24px}.rd-source-footer__legal{flex-direction:column;align-items:flex-start;gap:16px}.rd-source-footer__logo img{height:32px}.rd-source-footer__grid{grid-template-columns:1fr;gap:24px}.rd-source-footer h3{margin-bottom:12px;font-size:14px}.rd-source-footer p,.rd-source-footer__grid a{font-size:13px}.rd-source-footer__copyright{margin-top:24px!important;padding-top:20px;font-size:11px!important;text-align:left}.rd-source-footer a{display:inline-flex;align-items:center;min-height:36px}}

/* Strict Astro parity corrections. */
@media (min-width:769px) {
	.rd-portfolio,
	.rd-founders { display:grid; align-items:center; }
	.contact-us__inner { align-items:start; padding-block:72px 80px; }
}
.rd-founder__quote summary { display:flex; align-items:center; gap:8px; }
.rd-founder__quote summary svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.rd-founder__socials a:last-child { border:0; }
.rd-founder__socials svg { width:23px; height:23px; fill:currentColor; }
.rd-expertise__card li { font-size:14px; line-height:1.45; }
.rd-services__actions .rd-btn { background:transparent; color:#a7dce3; border-color:#5e949f; box-shadow:none; }.rd-services__actions .rd-btn--ghost { color:#fff; border-color:rgba(255,255,255,.42); }.rd-site-links a span { display:inline-block; width:7px; height:7px; margin:0 0 3px 4px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; font-size:0; transform:rotate(45deg); }

/* Match Astro eyebrow/category tones across the homepage sections. */
.rd-tech__heading .rd-tech__eyebrow { color:#5e949f; }
.rd-portfolio > .rd-container > .rd-kicker,
.rd-services__eyebrow { color:#5e949f; }
.rd-rapidorder .rd-faq__eyebrow { line-height:24px; }
.rd-services__tab {
	align-items:center;
	font-family:inherit;
}
.rd-services__tab > span {
	display:grid;
	align-content:center;
	gap:2px;
	min-width:0;
}
.rd-services__actions .rd-btn {
	min-height:44px;
	padding:10px 20px;
	border-radius:12px;
	color:#72a1ab;
	border-color:#72a1ab;
	background:rgba(114,161,171,.15);
	font-size:16px;
	font-weight:500;
	letter-spacing:-.02em;
	box-shadow:none;
}
.rd-services__actions .rd-btn:hover {
	transform:none;
	box-shadow:none;
	color:#72a1ab;
	border-color:#72a1ab;
	background:rgba(114,161,171,.3);
}
.rd-services__actions .rd-btn--ghost {
	color:#fff;
	border-color:rgba(255,255,255,.3);
	background:rgba(255,255,255,.05);
}
.rd-services__actions .rd-btn--ghost:hover {
	color:#fff;
	border-color:#fff;
	background:rgba(255,255,255,.1);
}

/* Reference-led dual logo marquee for the technology section. */
.rd-tech {
	background:#fff;
	color:#181b25;
	min-height:0;
}
.rd-tech__inner {
	display:flex;
	width:100%;
	max-width:none;
	min-height:0;
	flex-direction:column;
	justify-content:center;
	padding:var(--rd-section-space-y) 0;
}
.rd-tech__heading {
	position:relative;
	z-index:2;
	width:min(100% - 48px,760px);
	max-width:none;
	margin:0 auto;
	padding:0;
	text-align:center;
}
.rd-tech__heading .rd-tech__eyebrow {
	display:block;
	margin:0 0 16px;
	color:#5e949f;
	font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	font-size:12px;
	font-weight:800;
	line-height:normal;
	letter-spacing:.16em;
	text-transform:uppercase;
}
.rd-tech__heading h2 {
	margin:0;
	font-size:clamp(2.75rem,4.4vw,4.25rem);
	font-weight:600;
	line-height:1.04;
	letter-spacing:-.05em;
}
.rd-tech__heading .rd-tech__description {
	display:block;
	max-width:680px;
	margin:24px auto 0;
	color:#696e78;
	font-family:"Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	font-size:clamp(16px,1.3vw,18px);
	font-weight:400;
	line-height:1.6;
	letter-spacing:0;
	text-transform:none;
}
.rd-tech__marquee {
	--rd-marquee-gap:clamp(52px,5vw,80px);
	width:100%;
	margin-top:clamp(64px,8vh,88px);
	padding-top:0;
	overflow:hidden;
}
.rd-tech__lane {
	width:100%;
	overflow:hidden;
	-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.rd-tech__lane + .rd-tech__lane {
	margin-top:clamp(20px,2.8vh,30px);
}
.rd-tech__track {
	display:flex;
	width:max-content;
	will-change:transform;
	animation:rd-logo-marquee 42s linear infinite;
}
.rd-tech__lane--reverse .rd-tech__track {
	animation-direction:reverse;
	animation-duration:47s;
}
.rd-tech__lane:hover .rd-tech__track {
	animation-play-state:paused;
}
.rd-tech__group {
	display:flex;
	flex:none;
	align-items:center;
	gap:var(--rd-marquee-gap);
	margin:0;
	padding:0 var(--rd-marquee-gap) 0 0;
	list-style:none;
}
.rd-tech__logo {
	display:flex;
	min-width:clamp(156px,13vw,196px);
	height:52px;
	flex:none;
	align-items:center;
	justify-content:center;
	gap:12px;
	color:#777c86;
	font-size:clamp(15px,1.25vw,18px);
	font-weight:600;
	letter-spacing:-.025em;
	white-space:nowrap;
	opacity:.58;
	transition:color .25s ease,opacity .25s ease,transform .25s ease;
}
.rd-tech__logo img {
	width:38px;
	height:38px;
	flex:0 0 38px;
	object-fit:contain;
	filter:grayscale(1);
	transition:filter .25s ease;
}
.rd-tech__logo--wordmark img {
	width:clamp(82px,8vw,120px);
	height:42px;
	flex-basis:clamp(82px,8vw,120px);
}
.rd-tech__logo:hover {
	color:#354a56;
	opacity:1;
	transform:translateY(-2px);
}
.rd-tech__logo:hover img {
	filter:grayscale(0);
}
@keyframes rd-logo-marquee {
	to { transform:translateX(-50%); }
}
@media(max-width:700px) {
	.rd-tech { min-height:0; }
	.rd-tech__inner { min-height:0; padding:64px 0; }
	.rd-tech__heading { width:min(100% - 32px,620px); }
	.rd-tech__heading .rd-tech__eyebrow { display:block; margin-bottom:16px; }
	.rd-tech__heading h2 { font-size:clamp(2.45rem,11vw,3.25rem); }
	.rd-tech__heading .rd-tech__description { margin-top:20px; font-size:15px; line-height:1.5; }
	.rd-tech__marquee { --rd-marquee-gap:32px; margin-top:48px; padding-top:0; }
	.rd-tech__logo { min-width:142px; height:42px; gap:9px; font-size:14px; }
	.rd-tech__logo img { width:30px; height:30px; flex-basis:30px; }
	.rd-tech__logo--wordmark img { width:92px; height:34px; flex-basis:92px; }
}
@media(prefers-reduced-motion:reduce) {
	.rd-tech__track {
		animation-play-state:paused!important;
		will-change:auto;
	}
	.rd-tech__logo img { transition:none!important; }
}

/* Homepage parity quality layer. */
:root { --rd-motion-fast:.22s; --rd-motion:.38s; --rd-focus:3px solid #37d9ff; }
@media(max-width:767px){
	.home,
	.home button,
	.home input,
	.home select,
	.home textarea,
	.home .rd-heading,
	.home .rd-tech__heading .rd-tech__eyebrow,
	.home .rd-tech__heading .rd-tech__description,
	.home .contact-us__eyebrow {
		font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
	}
}
.rd-hero__content{min-width:0}.rd-hero__title{max-width:100%;overflow-wrap:anywhere}.rd-hero__description{max-width:646px}
.rd-hero__button:focus-visible,.rd-site-cta:focus-visible,.rd-services__tab:focus-visible,.rd-founder__quote-trigger:focus-visible,.rd-contact__trigger:focus-visible,.rd-contact__submit:focus-visible{outline:var(--rd-focus);outline-offset:4px}
.rd-services__panel{isolation:isolate}.rd-services__panel.is-active{animation:rd-service-fade .45s ease both}.rd-services__watermark{transition:opacity .35s ease,filter .35s ease;animation:rd-watermark-tint 2.4s ease-in-out infinite alternate}
@keyframes rd-service-fade{from{opacity:.25;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes rd-watermark-tint{from{opacity:.35}to{opacity:.58}}
.rd-founder{--rd-founder-card-padding:20px;position:relative;overflow:hidden;padding:var(--rd-founder-card-padding);box-sizing:border-box;transition:transform var(--rd-motion) ease,box-shadow var(--rd-motion) ease}.rd-founder:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(15,44,54,.16)}
.rd-founder__quote-trigger{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:0;border:0;background:transparent;color:#182126;cursor:pointer;font:inherit}.rd-founder__quote-trigger svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform var(--rd-motion-fast) ease}.rd-founder__quote-trigger[aria-expanded=true] svg{transform:rotate(90deg)}
.rd-founder__quote-overlay{position:absolute;inset:0;z-index:4;display:grid;place-items:center;padding:32px;background:rgba(247,248,248,.96);opacity:0;visibility:hidden;clip-path:circle(0 at 50% 50%);transition:opacity var(--rd-motion) ease,clip-path .45s cubic-bezier(.2,.75,.2,1),visibility var(--rd-motion) ease}.rd-founder.is-quote-open .rd-founder__quote-overlay{opacity:1;visibility:visible;clip-path:circle(75% at 50% 50%)}.rd-founder__quote-overlay blockquote{max-width:32ch;margin:0;color:#3c484d;font-size:15px;line-height:1.6}.rd-founder__quote-close{position:absolute;top:16px;right:16px;display:grid;width:36px;height:36px;place-items:center;border:1px solid rgba(16,20,23,.2);border-radius:50%;background:transparent;color:#182126;cursor:pointer;font-size:24px;line-height:1}
.rd-expertise__card-inner {
	position:relative;
	z-index:1;
	display:flex;
	height:100%;
	flex-direction:column;
	gap:24px;
}
.rd-expertise__heading {
	align-items:center;
}
.rd-expertise__card ul {
	gap:14px;
}
.rd-expertise__card li {
	gap:10px;
	font-size:15px;
	line-height:1.55;
}
.rd-expertise__card li > span:first-child {
	width:18px;
	margin-top:1px;
	line-height:1.45;
	text-align:center;
}
.rd-expertise__card li > span:last-child {
	min-width:0;
	flex:1;
}
@media(max-width:700px) {
	.rd-expertise__card-inner { gap:20px; }
	.rd-expertise__card ul { gap:12px; }
	.rd-expertise__card li { font-size:14px; }
}

/* Reusable animated card treatment. Keep the surface on the card itself so
 * consumers can reuse this class without nesting a second dark card. */
@property --angle {
	syntax: "<angle>";
	initial-value: 45deg;
	inherits: false;
}
.card {
	position: relative;
	isolation: isolate;
	z-index: 1;
	transition: transform .3s ease-out;
}
.card::after {
	content: "";
	position: absolute;
	inset: -1px;
	border-radius: inherit;
	pointer-events: none;
}
.card::after {
	z-index: 0;
	padding: 2px;
	background: conic-gradient(from var(--angle), #5F9CF2 0deg, #5F9CF2 35deg, transparent 45deg, transparent 260deg, #111 270deg, #5F9CF2 360deg);
	opacity: 0;
	animation: none;
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask-composite: subtract;
	transition: opacity .3s ease;
}
.card:hover::after,
.card:focus-within::after {
	opacity: 1;
	animation: spin-fade 4s linear 1 forwards;
}
@keyframes spin-fade {
	0% { --angle: 60deg; opacity: 1; }
	80% { --angle: 450deg; opacity: 1; }
	100% { --angle: 510deg; opacity: 0; }
}
.rd-expertise__card.card { border-color: transparent; overflow: visible; }
@media(max-width:768px){.rd-hero__nav-col,.rd-hero__nav,.dots-neo{display:none!important}.rd-hero__columns{display:flex;flex-direction:column;align-items:stretch;gap:28px}.rd-hero__content{width:100%}.rd-hero__title-row{flex-direction:column;align-items:flex-start;gap:12px}.rd-hero__title{font-size:clamp(2.35rem,10vw,3rem);line-height:1.08}.rd-hero__description{font-size:16px;line-height:1.5}.rd-hero__labels{width:100%;gap:16px;justify-content:flex-start}.rd-services__tabs{grid-template-columns:1fr;gap:12px;overflow:visible}.rd-services__benefits{grid-template-columns:1fr}.rd-founder{width:min(100%,340px)}}
@media(max-width:460px){.rd-hero{padding-inline:16px}.rd-hero__inner{padding-inline:0}.rd-hero__labels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.rd-hero__label{width:auto}.rd-services__panel{min-height:620px;padding:28px 24px}}
@media(prefers-reduced-motion:reduce){.rd-services__panel.is-active,.rd-services__watermark,.card::after{animation:none!important;transition:none!important}.rd-founder,.rd-btn,.rd-expertise__card{transform:none!important}}

/* Founder quote reveal: match the Astro FounderCard interaction. */
.rd-founder__quote-trigger svg { width:24px; transition:transform 360ms cubic-bezier(.22,1,.36,1); }
.rd-founder__quote-trigger[aria-expanded="true"] svg { transform:rotate(180deg); }
.rd-founder__quote-overlay {
	border-radius:inherit;
	overflow:hidden;
	padding:var(--rd-founder-card-padding);
	box-sizing:border-box;
	opacity:1;
	visibility:visible;
	clip-path:inset(0 0 100% 0);
	pointer-events:none;
	contain:paint;
	will-change:clip-path;
	transition:clip-path 360ms cubic-bezier(.22,1,.36,1);
}
.rd-founder__quote-overlay.is-open { clip-path:inset(0 0 0% 0); pointer-events:auto; opacity:1; visibility:visible; }
.rd-founder__quote-overlay { background:#fff; }
.rd-founder__quote-overlay > .rd-founder__quote-close { display:none; }
.rd-founder__quote-inner { display:flex; flex-direction:column; gap:16px; height:100%; }
.rd-founder__quote-icon,
.rd-founder__quote-inner blockquote,
.rd-founder__quote-inner .rd-founder__quote-close {
	opacity:0;
	transform:translateY(8px);
	transition:opacity 180ms cubic-bezier(.22,1,.36,1),transform 180ms cubic-bezier(.22,1,.36,1);
}
.rd-founder__quote-icon { width:54px; height:54px; color:#304b59; flex-shrink:0; }
.rd-founder__quote-inner blockquote {
	flex:1 1 auto;
	min-width:0;
	min-height:0;
	width:100%;
	max-width:none;
	overflow:auto;
	scrollbar-gutter:stable;
	margin:0;
	padding-right:4px;
	box-sizing:border-box;
	color:#3c484d;
	font-size:14px;
	line-height:1.65;
}
.rd-founder__quote-inner .rd-founder__quote-close { position:static; inset:auto; align-self:flex-start; width:auto; height:auto; margin-top:auto; display:flex; align-items:center; gap:8px; padding:0; border:0; border-radius:0; background:transparent; color:#182126; cursor:pointer; font:inherit; font-size:16px; line-height:1.2; white-space:nowrap; }
.rd-founder__quote-inner .rd-founder__quote-close svg { flex:0 0 24px; display:block; width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.rd-founder__quote-overlay.is-open .rd-founder__quote-icon { opacity:1; transform:translateY(0); transition-delay:100ms; }
.rd-founder__quote-overlay.is-open blockquote { opacity:1; transform:translateY(0); transition-delay:140ms; }
.rd-founder__quote-overlay.is-open .rd-founder__quote-close { opacity:1; transform:translateY(0); transition-delay:200ms; }
@media(prefers-reduced-motion:reduce){
	.rd-founder__quote-overlay,
	.rd-founder__quote-trigger svg,
	.rd-founder__quote-icon,
	.rd-founder__quote-inner blockquote,
	.rd-founder__quote-inner .rd-founder__quote-close { transition:none!important; }
}

/* Content-driven homepage section rhythm. Viewport height must not determine
 * section height; content density selects the normal or compact spacing token. */
.rd-hero,
.rd-tech,
.rd-portfolio,
.rd-expertise,
.rd-founders,
.rd-contact {
	height:auto;
	min-height:0;
}
.rd-hero {
	padding-block:var(--rd-section-space-y);
}
.rd-portfolio,
.rd-founders {
	padding-block:var(--rd-section-space-y-compact);
}
.rd-tech__inner,
.rd-expertise__inner,
.rd-contact__inner,
.contact-us__inner {
	min-height:0;
}
.rd-expertise__inner {
	padding-block:var(--rd-section-space-y);
}
.rd-contact__inner,
.contact-us__inner {
	padding-block:var(--rd-cta-space-y);
}
@media(max-width:700px) {
	.rd-hero,
	.rd-expertise__inner {
		padding-block:64px;
	}
	.rd-portfolio,
	.rd-founders,
	.rd-contact__inner {
		padding-block:56px;
	}
	.contact-us__inner { padding-block:72px; }
}

/* Contact CTA background treatment. Keep layout and content sizing independent. */
.contact-us {
	--dm-cyan:130,231,255;
	--dm-blue:19,163,198;
	--dm-grid-width:67px;
	--dm-grid-height:72px;
	background:
		linear-gradient(
			180deg,
			transparent 0%,
			transparent 40%,
			rgba(0,0,0,.12) 48%,
			rgba(0,0,0,.52) 68%,
			#000 82%,
			#000 100%
		),
		linear-gradient(
			90deg,
			rgba(0,0,0,.66) 0%,
			rgba(0,0,0,.14) 11%,
			rgba(0,0,0,.03) 17%,
			transparent 23%
		),
		radial-gradient(
			ellipse 145% 90% at 100% 0%,
			rgba(var(--dm-cyan),1) 0%,
			rgba(var(--dm-cyan),.7) 42%,
			rgba(var(--dm-blue),.3) 80%,
			transparent 100%
		),
		radial-gradient(
			ellipse 68% 52% at 100% 0%,
			rgba(255,255,255,.42) 0%,
			rgba(var(--dm-cyan),.2) 52%,
			transparent 92%
		),
		#000;
}
.contact-us::before {
	content:"";
	position:absolute;
	z-index:-1;
	inset:-4%;
	pointer-events:none;
	background:
		conic-gradient(
			from 20deg at 98% 1%,
			transparent 0deg 184deg,
			rgba(255,255,255,.05) 186deg,
			rgba(255,255,255,.44) 188deg,
			rgba(255,255,255,.04) 192deg,
			transparent 197deg,
			rgba(255,255,255,.06) 201deg,
			rgba(255,255,255,.66) 204deg,
			rgba(255,255,255,.05) 208deg,
			transparent 214deg,
			rgba(255,255,255,.04) 219deg,
			rgba(255,255,255,.38) 222deg,
			rgba(255,255,255,.04) 226deg,
			transparent 231deg,
			rgba(255,255,255,.07) 235deg,
			rgba(255,255,255,.72) 239deg,
			rgba(255,255,255,.05) 243deg,
			transparent 249deg 360deg
		),
		linear-gradient(
			118deg,
			transparent 48%,
			rgba(var(--dm-cyan),.1) 57%,
			transparent 68%
		);
	-webkit-mask-image:radial-gradient(
		ellipse 145% 90% at 100% 0%,
		#000 0%,
		#000 54%,
		rgba(0,0,0,.58) 84%,
		transparent 100%
	);
	mask-image:radial-gradient(
		ellipse 145% 90% at 100% 0%,
		#000 0%,
		#000 54%,
		rgba(0,0,0,.58) 84%,
		transparent 100%
	);
	filter:blur(46px);
	mix-blend-mode:screen;
	opacity:.58;
	transform:scale(1.04);
	transform-origin:98% 1%;
}
.contact-us::after {
	content:"";
	position:absolute;
	z-index:1;
	inset:-8%;
	pointer-events:none;
	background-image:
		linear-gradient(rgba(189,246,255,.42) 1px,transparent 1px),
		linear-gradient(90deg,rgba(189,246,255,.42) 1px,transparent 1px),
		radial-gradient(circle,rgba(255,255,255,.18) .6px,transparent .8px);
	background-position:center;
	background-size:
		var(--dm-grid-width) var(--dm-grid-height),
		var(--dm-grid-width) var(--dm-grid-height),
		3px 3px;
	-webkit-mask-image:linear-gradient(
		180deg,
		#000 0%,
		#000 52%,
		rgba(0,0,0,.68) 68%,
		transparent 86%,
		transparent 100%
	);
	mask-image:linear-gradient(
		180deg,
		#000 0%,
		#000 52%,
		rgba(0,0,0,.68) 68%,
		transparent 86%,
		transparent 100%
	);
	opacity:.66;
}
@media(max-width:600px) {
	.contact-us {
		--dm-grid-width:48px;
		--dm-grid-height:52px;
	}
}

/* Let panel content define its height; the decorative watermark stays absolute. */
.rd-services__panel {
	height:auto;
	min-height:0;
}

/* The section kicker is the only eyebrow; tabs already identify each panel. */
.rd-services__panel h3 {
	margin-top:0;
	font-weight:500;
}

/* Preserve the section rhythm when the optional expertise lead is empty. */
.rd-expertise .rd-section-title + .rd-expertise__grid {
	margin-top:clamp(24px,3vh,36px);
}

/* The theme provides its own header language control. */
.wpml-ls-statics-footer {
	display:none !important;
}

/* Light end-CTA, based on the live rapiddweller "Going Above" treatment.
 * The preceding dark CTA declarations remain intact as an archived fallback. */
.contact-us {
	--dm-grid-width:0px;
	--dm-grid-height:0px;
	height:810px;
	min-height:810px;
	max-height:810px;
	overflow:hidden;
	--contact-light:#fff;
	--contact-image:url("assets/media/Going-Above-UI.jpg");
	background-color:var(--contact-light);
	background-image:none;
	color:#323e4f;
	display:block;
	visibility:visible;
	opacity:1;
}
.contact-us::before {
	position:absolute;
	z-index:0;
	inset-block:0;
	left:50%;
	width:min(100%,1440px);
	background:var(--contact-image) bottom right / cover no-repeat;
	content:"";
	filter:blur(0px);
	mix-blend-mode:normal;
	opacity:1;
	pointer-events:none;
	transform:translateX(-50%);
	mask-repeat:no-repeat;
	-webkit-mask-image: linear-gradient(
		90deg,
		transparent 0%,
		rgba(0, 0, 0, .2) 8%,
		#000 28%,
		#000 72%,
		rgba(0, 0, 0, .2) 92%,
		transparent 100%
	);
	mask-image: linear-gradient(
		90deg,
		transparent 0%,
		rgba(0, 0, 0, .2) 8%,
		#000 28%,
		#000 72%,
		rgba(0, 0, 0, .2) 92%,
		transparent 100%
	);
}
.contact-us::after {
	display:none;
}
.contact-us__inner {
	position:relative;
	z-index:2;
	box-sizing:border-box;
	display:grid;
	align-items:start;
	justify-items:center;
	min-height:inherit;
	padding:72px clamp(24px,5vw,80px) 80px;
}
.contact-us__copy {
	min-width:0;
	width:min(100%,660px);
	align-items:center;
	text-align:center;
}
.contact-us__eyebrow {
	margin-bottom:16px;
	color:#5e949f;
	font-family:Inter,Arial,sans-serif;
	font-weight:700;
	letter-spacing:.13em;
}
.contact-us__title {
	max-width:660px;
	font-size:clamp(2.25rem,4vw,3.5rem);
	font-weight:500;
	line-height:1.1;
	text-shadow:none;
}

/* Global display-heading contract. Figma DATAMIMIC node 246:240 is the
 * source of truth: use one explicit surface variant, never a bespoke heading
 * gradient in an individual block. Keep section-specific rules to sizing and
 * layout only. */
.rd-heading {
	margin:0;
	font-family:Inter,Arial,sans-serif;
	font-weight:500;
	letter-spacing:-.02em;
	text-wrap:balance;
}
.rd-heading--light {
	background:linear-gradient(90deg,#50828e 6.96%,#1f363b 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
	color:#465b66;
}
.rd-heading--dark {
	background:linear-gradient(90deg,#fff 6.96%,#50828e 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
	color:#fff;
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)) {
	.rd-heading--light { background:none; color:#1f363b; }
	.rd-heading--dark { background:none; color:#fff; }
}
.contact-us__content {
	max-width:610px;
	margin-top:22px;
	color:#3c484d;
	font-size:16px;
	line-height:1.55;
	text-shadow:none;
}
.contact-us__form {
	box-sizing:border-box;
	width:min(100%,11rem);
	max-width:100%;
	align-self:center;
	margin-top:30px;
}
.contact-us__form.is-expanded {
	width:min(100%,26rem);
}
.contact-us__trigger,
.contact-us__field {
	box-sizing:border-box;
	max-width:100%;
}
.contact-us__trigger {
	min-width:0;
	white-space:nowrap;
}
.contact-us__trigger > span {
	min-width:0;
	white-space:nowrap;
}
.contact-us__trigger {
	border-color:rgba(94,148,159,.82);
	background:rgba(255,255,255,.28);
	color:#465b66;
	box-shadow:none;
}
.contact-us__trigger:hover,
.contact-us__trigger:focus-visible {
	border-color:#5e949f;
	background:rgba(94,148,159,.14);
}
.contact-us__link {
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin-top:30px;
	color:#4d7b84;
	font:500 16px/24px Inter,Arial,sans-serif;
	letter-spacing:-.02em;
	text-decoration:none;
}
.contact-us__link svg {
	width:24px;
	height:24px;
	flex:none;
	fill:none;
	stroke:currentColor;
	stroke-linecap:round;
	stroke-linejoin:round;
	stroke-width:1.5;
}
.contact-us__link:hover,
.contact-us__link:focus-visible {
	color:#5b67a7;
}
.contact-us__link:focus-visible {
	outline:2px solid #5e949f;
	outline-offset:4px;
}
.contact-us__field {
	border-color:rgba(50,62,79,.38);
	background:rgba(255,255,255,.94);
	box-shadow:0 12px 28px rgba(50,62,79,.16);
}
.contact-us__field input,
.contact-us__submit {
	color:#323e4f;
}
.contact-us__submit {
	border-left-color:rgba(50,62,79,.2);
}
@media(max-width:600px) {
	.contact-us {
		height:810px;
		min-height:810px;
		max-height:810px;
	}
	.contact-us::before { width:100%; background-position:bottom center; background-size:auto 100%; }
	.contact-us::after { display:none; }
	.contact-us__inner {
		padding:72px 24px 64px;
	}
	.contact-us__form {
		width:min(100%,11rem);
		align-self:center;
	}
}
