/* Shared navigation: scoped resets isolate it from legacy page typography. */
:root{--nav-height:96px}
.site-navigation{--nav15-gutter:clamp(22px,5vw,80px);font:400 16px/1.5 Onest,Arial,sans-serif;text-transform:none;letter-spacing:normal;text-align:left}
.site-navigation *{box-sizing:border-box}
.site-navigation a{text-decoration:none;letter-spacing:normal}
.site-navigation button{font-family:inherit;font-weight:400;cursor:pointer;letter-spacing:normal;text-transform:none}
.site-navigation .nav15-bar{position:relative;background:none;border:0;box-shadow:none;overflow:visible}
@media(max-width:980px){:root{--nav-height:80px}}
/* React Bits Navigation 15: translucent ink, moving underline and mobile drawer. */
.site-navigation{position:sticky;top:0;z-index:100;height:96px;background:rgba(16,16,16,.87);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid #ffffff26;color:#f1f2ed}
.nav15-bar{height:100%;max-width:1600px;margin:auto;padding:0 var(--nav15-gutter);display:flex;align-items:center;gap:clamp(24px,3vw,48px)}
.nav15-brand{display:inline-flex;align-items:center;flex-shrink:0;min-height:44px}
.nav15-brand img{width:177px;height:auto;display:block}
.nav15-desktop-links{display:flex;align-items:center;gap:26px;margin-left:auto}
.nav15-link{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:10px 0;border:0;background:transparent;color:#b6b7b3!important;font-size:15px;line-height:1.3;white-space:nowrap;transition:color .2s}
.nav15-link[data-current=true],.nav15-link:hover{color:#fff!important}
.nav15-line{position:absolute;bottom:5px;left:0;right:0;height:1px;background:#f1f2ed;pointer-events:none}
.nav15-actions{display:flex;align-items:center;gap:28px}
.nav15-cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 20px;border:1px solid #ffffff7a;border-radius:99px;white-space:nowrap;font-size:15px;line-height:1.3;color:#f1f2ed;background:transparent;transition:background .2s,color .2s,border-color .2s}
.nav15-cta:hover{background:#f1f2ed;color:#161616;border-color:#f1f2ed}
.nav15-languages{display:flex;align-items:center;gap:10px;font-size:12px}
.nav15-languages a{display:inline-flex;align-items:center;min-height:44px;color:#aaa;font-weight:500}
.nav15-languages a:hover,.nav15-languages a[aria-current]{color:#fff}
.nav15-languages span{color:#72736f}
.nav15-services{position:relative}
.nav15-services button svg{transition:transform .2s}
.nav15-submenu{position:absolute;top:calc(100% + 18px);left:-24px;min-width:210px;padding:12px;border:1px solid #ffffff26;border-radius:16px;background:rgba(20,20,20,.96);box-shadow:0 18px 45px #0003}
.nav15-submenu a{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:46px;padding:10px 12px;border-radius:8px;font-size:15px;color:#f1f2ed;transition:background .2s}
.nav15-submenu a:hover{background:#ffffff12}
.nav15-toggle{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:46px;min-width:46px;padding:10px;border:1px solid #ffffff50;border-radius:99px;background:transparent;color:#f1f2ed!important}
.nav15-toggle svg{width:22px;height:22px}
.nav15-open{display:none}
.site-navigation :is(a,button):focus-visible,.nav15-dialog :is(a,button):focus-visible{outline:2px solid #e4fe55;outline-offset:4px}
.nav15-dialog{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#f1f2ed;overflow:hidden;font-family:Onest,sans-serif}
.nav15-dialog::backdrop{background:transparent}
.nav15-drawer{display:flex;flex-direction:column;width:100%;height:100%;padding:0 24px 28px;padding-bottom:max(28px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;background:rgba(16,16,16,.96)}
.nav15-drawer:focus{outline:none}
.nav15-drawer-top{min-height:80px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff26;flex-shrink:0}
.nav15-drawer-top .nav15-brand img{width:145px}
.nav15-drawer-links{display:flex;flex-direction:column;margin-top:18px}
.nav15-drawer-links>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #ffffff26;font-size:clamp(25px,5vw,34px);line-height:1.2;letter-spacing:-.04em;color:#f1f2ed}
.nav15-drawer-links>a svg{width:22px;height:22px;color:#999b95}
.nav15-mobile-services{padding:22px 0}
.nav15-mobile-services p{font-size:14px;color:#a8aaa3;margin:0 0 12px}
.nav15-mobile-services>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nav15-mobile-services a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:12px 14px;border:1px solid #ffffff26;border-radius:9px;font-size:16px;color:#f1f2ed}
.nav15-mobile-services svg{width:16px;height:16px;color:#999b95}
.nav15-drawer-bottom{margin-top:auto;padding-top:20px}
.nav15-drawer-bottom>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;font-size:14px}
.nav15-drawer-bottom .nav15-cta{display:flex;width:100%;background:#f1f2ed;color:#161616;justify-content:space-between;min-height:54px}
@media(max-width:1150px) and (min-width:981px){.nav15-brand img{width:150px}.nav15-bar{gap:24px}.nav15-desktop-links{gap:20px}.nav15-actions{gap:18px}.nav15-cta{padding-inline:16px;gap:10px}}
@media(max-width:980px){.site-navigation{height:80px}.nav15-desktop-links,.nav15-actions>.nav15-cta{display:none}.nav15-bar{gap:22px}.nav15-brand img{width:145px}.nav15-actions{margin-left:auto}.nav15-open{display:inline-flex;padding-inline:16px}.nav15-languages{gap:8px}}
@media(max-width:380px){.nav15-bar{gap:14px}.nav15-brand img{width:116px}.nav15-open{padding-inline:12px}.nav15-open span{display:none}}
@media(prefers-reduced-motion:reduce){.site-navigation *,.nav15-dialog *{transition:none!important}}

/* Reference motion: terslab-web.pages.dev, rotate(-7deg) scale(1.04), 450ms.
   Independent transform properties preserve positioned controls and cursor badges.
   Underlined text actions and the navbar's text links are intentionally excluded. */
body :is(button:not(.nav15-link):not(.cap-tab), .home-button, .website-search-cta, .nav15-cta, .ab-btn, .nf-cta, .home-project-badge, .work-cursor, .inquiry-interest-options label>span, .nav15-mobile-services a){
  border-radius:var(--site-radius)!important;
  rotate:0deg;
  scale:1;
  transition:rotate .45s cubic-bezier(.16,1,.3,1),scale .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1),background-color .3s cubic-bezier(.16,1,.3,1),color .3s cubic-bezier(.16,1,.3,1),border-color .3s cubic-bezier(.16,1,.3,1),opacity .2s!important;
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  body :is(button:not(.nav15-link):not(.cap-tab), .home-button, .website-search-cta, .nav15-cta, .ab-btn, .nf-cta, .nav15-mobile-services a):hover:not(:disabled):not([aria-disabled=true]),
  body .inquiry-interest-options label:hover>span,
  body .home-project-art.is-pointer-inside .home-project-badge,
  body .work-art.is-pointer-inside .work-cursor{
    rotate:-7deg;
    scale:1.04;
  }
}
body :is(button:not(.nav15-link):not(.cap-tab), .home-button, .website-search-cta, .nav15-cta, .ab-btn, .nf-cta, .nav15-mobile-services a):active:not(:disabled):not([aria-disabled=true]),
body .inquiry-interest-options label:active>span{rotate:0deg;scale:.98}
@media(prefers-reduced-motion:reduce){
  body :is(button:not(.nav15-link):not(.cap-tab), .home-button, .website-search-cta, .nav15-cta, .ab-btn, .nf-cta, .home-project-badge, .work-cursor, .inquiry-interest-options label>span, .nav15-mobile-services a){rotate:none!important;scale:none!important;transition:none!important}
}

/* Shared charcoal palette: dark surfaces retain depth across every page. */
:root{--site-charcoal:radial-gradient(ellipse at 12% 15%,#353535a6,transparent 68%),radial-gradient(ellipse at 92% 80%,#2e2e2e99,transparent 72%),#161616;--site-charcoal-button:linear-gradient(135deg,#343434,#161616 70%,#242424)}
.site-navigation{background:linear-gradient(115deg,#323232ed,#161616ed 58%,#282828ed)}
.nav15-submenu{background:linear-gradient(135deg,#303030fa,#161616fa)}
.nav15-drawer{background:var(--site-charcoal)}
body #site-footer.shared-footer{background:radial-gradient(ellipse 85% 90% at 15% 100%,#343434b3,transparent 80%),radial-gradient(ellipse 65% 75% at 95% 100%,#2d2d2d80,transparent 80%),#161616}
body .dark,body.about-redesign .about-founder,body .rena-showcase,body .layers,body .journey,body .impact{background:var(--site-charcoal)}
body :is(.browser-shell,.case-sidebar-rail,.case-sidebar-stage,.system-map article,.ads-strategy-map>strong,.growth-plan-center){background:var(--site-charcoal)}
body :is(.home-button,.website-search-cta,.home-dashboard-mark,.home-project-badge,.work-cursor,.website-demo-cursor,.platform-cursor-hint,.close-link.primary,.story-cta,.shop-dialog-close){background-image:var(--site-charcoal-button)}
body :is(.ads-channel-tabs,.ads-report-tabs,.grou-console-tabs) button[aria-selected=true],body.renauticos-framed .case-sidebar-button[aria-selected=true]{background-image:var(--site-charcoal-button)}
/* Light CTA hover states keep their original dark text contrast. */
body .website-search-cta:hover{background-image:none}

.home-vision-cursor{position:absolute;inset:0;overflow:clip;pointer-events:none;z-index:10}
.home-vision-cursor-tile{position:absolute;display:block;width:52px;height:52px;overflow:hidden;border-radius:3px;opacity:0;pointer-events:none;box-shadow:0 3px 10px #00000014;transform-origin:center}
.home-vision-cursor-tile img{position:absolute;display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.home-vision-cursor{display:none}}

/* One corner radius for the site's rectangular cards, media and controls.
   Device silhouettes, circular marks and full-width section transitions keep their geometry. */
:root { --site-radius: 16px; }
body :is(
  .work-art, .work-project:focus-visible, .work-category>span,
  .home-project-art, .home-service-panel, .home-service-art, .home-partner-grid>div,
  .home-ad, .home-dashboard-mark, .home-dashboard-metrics>div, .home-tags span,
  .about-founder-card, .about-founder-photo, .about-area-portrait,
  .about-team-video, .team-tile-photo, .team-preview-photo, .team-profile-photo,
  .team-profile-dialog, .home-vision-cursor-tile, .about-tile-reveal .grid>div,
  .inquiry-form, .contact-city, .contact-socials a, .nav15-submenu,
  .service-categories>a, .process-crop, .website-case, .website-benefit,
  .website-benefit-art, .website-search-visual, .website-demo-cursor,
  .ads-channel-tabs, .ads-channel-panel, .ads-channel-art, .ads-tags>span,
  .ads-feed-card, .ads-search-query, .ads-search-result, .ads-video-preview,
  .ads-pin-board figure, .ads-strategy-map>span, .ads-strategy-map>strong,
  .ads-strategy-map>div>span, .ads-creative-stack>img, .ads-creative-stack>div,
  .ads-report-tabs, .ads-report-display, .ads-report-panel, .ads-journey li,
  .ads-source-creative>img, .ads-service-creative img,
  .product-roadmap>span, .product-wireframe, .product-wireframe>span,
  .product-connections>span, .product-connections>strong, .product-connections>div>span,
  .product-release, .growth-learning-loop span, .growth-plan-center, .growth-plan-node,
  .rena-bento-card, .rena-notification-card, .rena-notification, .rena-notification-icon,
  .rena-terminal-card, .rena-hydro-card, .rena-discovery-card, .rena-search-demo,
  .rena-hydro-card>img, .rena-discovery-card [data-discovery-place], .rena-discovery-card figure,
  .case-sidebar, .case-sidebar-mark, .platform-kpis>div, .platform-preview, .platform-card,
  .platform-tags span, .rena-drift-card, .owner-portrait, .hero-drift-wall figure,
  .hero-core-media, .hero-swap-card, .connected-experience-card, .surface-preview,
  .bento-card, .social-screen, .browser-mock, .browser-shell, .browser-window,
  .sms-card, .shop-card, .system-map article, .menu-drift-tile,
  .local-proof, .audience-proof, .grou-console, .grou-console-mark, .grou-console-kpis>div,
  .grou-trend-card, .grou-map-card, .grou-signups, .grou-campaign, .grou-console-side section,
  .grou-keywords, .grou-reach, .grou-segments, .grou-funnel, .grou-touchpoints,
  .monthly-strategy figure, .strategy-brief, .shop-preview, .shop-dialog,
  .paid-media-tabs, .paid-media-preview, .business-strategies-grid video, .seo-positioning-note,
  .merch-card, .casa-hero, .casa-drift-tile, .system-grid article,
  .proof-tree-panel, .proof-events-panel, .proof-platform-panel, .proof-event,
  .drift-tile, .journey-timeline, .gallery-visual, .seo-growth-shell, .seo-growth-core,
  .seo-chart, .seo-stat, .review-tooltip, .link-preview-card, .link-preview-media
) { border-radius: var(--site-radius) !important; }
body :is(.team-preview-photo, .about-team-video) { overflow: hidden; }
.work-media, .work-cover { border-radius: inherit; }
