:root {
  --rg-bg: #03100e;
  --rg-deep: #020907;
  --rg-panel: #071714;
  --rg-panel-2: #0a1d19;
  --rg-mint: #33efc4;
  --rg-mint-soft: #91f8e2;
  --rg-ink: #e7f5f0;
  --rg-muted: #8aa29b;
  --rg-line: rgba(84, 211, 179, .16);
  --rg-line-strong: rgba(84, 211, 179, .34);
  --rg-gutter: clamp(1.15rem, 5vw, 5rem);
  --rg-max: 92rem;
  --rg-reading: 70ch;
  --rg-nav: 4.5rem;
  --rg-ease: cubic-bezier(.16, 1, .3, 1);
  --background: var(--rg-bg);
  --foreground: var(--rg-ink);
  --muted: var(--rg-muted);
  --border: var(--rg-line);
  --accent: var(--rg-mint);
  --accent-foreground: #00120d;
  --bg: var(--rg-bg);
  --ink: var(--rg-ink);
  --text: var(--rg-ink);
  --panel: var(--rg-panel);
  --panel-soft: var(--rg-panel-2);
  --line: var(--rg-line);
  --cyan: var(--rg-mint);
  --blue: var(--rg-mint);
  --green: var(--rg-mint);
  --pink: var(--rg-mint);
  --violet: var(--rg-mint);
  --vx-cyan: rgba(51, 239, 196, .8);
  --vx-blue: rgba(51, 239, 196, .42);
  --paper: var(--rg-panel);
}

* { scrollbar-color: var(--rg-mint) var(--rg-deep); }
html {
  background: var(--rg-bg) !important;
  color-scheme: dark;
  scroll-behavior: smooth;
  overflow-x: clip;
}
body {
  position: relative;
  min-height: 100vh;
  overflow-x: clip;
  background:
    radial-gradient(circle at 84% 10%, rgba(51, 239, 196, .065), transparent 28rem),
    radial-gradient(circle at 12% 72%, rgba(51, 239, 196, .025), transparent 30rem),
    linear-gradient(180deg, var(--rg-deep), var(--rg-bg) 30%, #04120f) !important;
  color: var(--rg-ink) !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 16px;
  line-height: 1.68;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -10;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(51, 239, 196, .026) 1px, transparent 1px),
    linear-gradient(90deg, rgba(51, 239, 196, .026) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, #000, rgba(0, 0, 0, .25) 82%, transparent);
}
::selection { background: var(--rg-mint); color: #00120d; }
img { max-width: 100%; }
a { color: inherit; }
p { color: var(--rg-muted); }
h1, h2, h3, h4, .brand, .font-display, .serif {
  font-family: 'Manrope', sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: -.052em !important;
  line-height: .98 !important;
  text-wrap: balance;
}
em { font-style: normal; }
h1 em, h2 em, h3 em, .text-accent, .accent { color: var(--rg-mint) !important; }
.eyebrow, .label, .kicker, .case-kicker, .section-label, .card-top,
.article-meta, .tier-tagline, .detail-breadcrumbs, .blog-breadcrumbs,
.deal-kicker, .faq-kicker, .project-feature-copy > span {
  font-family: 'DM Mono', monospace !important;
  letter-spacing: .08em !important;
}
.eyebrow, .label, .kicker, .case-kicker, .section-label, .faq-kicker { color: var(--rg-mint) !important; }
.blob, .orbit, .noise, .hero-bg, .mouse-spotlight, .cursor-aura,
.detail-shell::before, .blog-shell::after, .blog-shell::before { opacity: .16 !important; filter: none !important; }

/* Navigation */
.navbar, .detail-nav, .blog-nav, .case-nav, .legal-nav {
  position: sticky !important;
  top: 0 !important;
  z-index: 80 !important;
  min-height: var(--rg-nav) !important;
  padding: 0 var(--rg-gutter) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--rg-line) !important;
  background: rgba(2, 9, 7, .86) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
  box-shadow: none !important;
}
.navbar-inner { width: 100%; max-width: var(--rg-max) !important; min-height: var(--rg-nav) !important; }
.brand {
  display: inline-flex !important;
  align-items: center !important;
  color: var(--rg-ink) !important;
  font-family: 'DM Mono', monospace !important;
  font-size: .72rem !important;
  font-weight: 500 !important;
  letter-spacing: .02em !important;
  white-space: nowrap;
}
.brand::before {
  content: '';
  width: .72rem;
  height: .72rem;
  margin-right: .55rem;
  background: var(--rg-mint);
  box-shadow: 0 0 18px rgba(51, 239, 196, .32);
}
.nav-links, .nav-cluster, .nav-actions, .lang-switch { font-family: 'DM Mono', monospace !important; font-size: .64rem !important; }
.nav-links a, .nav-cluster a, .lang-switch a { color: var(--rg-muted) !important; }
.nav-links a:hover, .nav-cluster a:hover, .nav-links a.active, .lang-switch a.active { color: var(--rg-mint) !important; }
.lang-switch {
  border-color: var(--rg-line) !important;
  border-radius: 0 !important;
  background: rgba(5, 20, 17, .76) !important;
  box-shadow: none !important;
}
.lang-switch a { border-radius: 0 !important; }
.lang-switch a.active { background: var(--rg-mint) !important; color: #00120d !important; box-shadow: none !important; }
.nav-links a::after { background: var(--rg-mint) !important; }
.nav-cta, .pill.primary, .btn-primary, .submit-button {
  border: 1px solid var(--rg-mint) !important;
  border-radius: 0 !important;
  background: var(--rg-mint) !important;
  color: #00120d !important;
  box-shadow: none !important;
  font-family: 'DM Mono', monospace !important;
  min-height: 2.75rem;
  transition: background .2s, color .2s, transform .2s !important;
}
.nav-cta:hover, .pill.primary:hover, .btn-primary:hover, .submit-button:hover {
  background: transparent !important;
  color: var(--rg-mint) !important;
  transform: translateY(-2px);
}
.pill, .btn-outline, .back, .theme-toggle {
  border-color: var(--rg-line-strong) !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--rg-muted) !important;
  box-shadow: none !important;
  font-family: 'DM Mono', monospace !important;
  min-height: 2.75rem;
}
.pill:hover, .btn-outline:hover, .back:hover, .theme-toggle:hover { border-color: var(--rg-mint) !important; color: var(--rg-mint) !important; }
.nav-toggle { color: var(--rg-mint) !important; min-width: 44px; min-height: 44px; }

/* Shared page rhythm */
.section, .services, .contact, .faq-section, .mission-section, .standout-section,
.limited-deal, .calculator-section, .process { background: transparent !important; border-color: var(--rg-line) !important; }
.section, .process, .contact, .faq-section, .calculator-section, .standout-section, .limited-deal {
  padding-block: clamp(5.5rem, 10vw, 10rem) !important;
}
.section-inner, .standout-inner, .limited-deal-inner, .faq-wrap, .footer-inner { max-width: var(--rg-max) !important; }
.section-head { align-items: end !important; margin-bottom: clamp(2.5rem, 6vw, 5rem) !important; }
.section h2, .process h2, .contact h2, .faq-heading { font-size: clamp(3rem, 7vw, 7.5rem) !important; }

/* Main language pages */
.page-home .hero {
  min-height: calc(100svh - var(--rg-nav)) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--rg-line);
}
.page-home .hero::after { background: linear-gradient(90deg, rgba(2, 9, 7, .98), rgba(3, 16, 14, .8) 48%, rgba(3, 16, 14, .2)) !important; }
.page-home .hero-grid { width: 100%; max-width: var(--rg-max) !important; }
.page-home .hero h1 { color: var(--rg-ink) !important; text-shadow: none !important; font-size: clamp(3.7rem, 8.4vw, 9rem) !important; max-width: 10ch; }
.page-home .hero p.lead { max-width: 60ch; color: var(--rg-muted) !important; }
.hero-proof-card {
  border: 1px solid var(--rg-line-strong) !important;
  border-radius: 0 !important;
  background: rgba(5, 20, 17, .82) !important;
  color: var(--rg-ink) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.hero-video-bg { filter: hue-rotate(122deg) saturate(.65) contrast(1.02) brightness(.72) !important; mix-blend-mode: screen !important; opacity: .16 !important; }
.hero-proof-card::before { height: 1px !important; background: var(--rg-mint) !important; }
.hero-proof-card p, .hero-proof-card li { color: var(--rg-muted) !important; }
.hero-proof-card li { border: 0 !important; border-top: 1px solid var(--rg-line) !important; border-radius: 0 !important; background: transparent !important; }
.hero-person img { border-radius: 0 !important; border-color: var(--rg-line-strong) !important; box-shadow: none !important; }
.marquee { border-color: var(--rg-line) !important; background: var(--rg-deep) !important; font-family: 'DM Mono', monospace; font-size: .7rem; }
.limited-deal::before, .standout-section::before, .faq-section::before, .calculator-section::before, .calculator-section::after { display: none !important; }
.limited-deal-inner { align-items: end !important; }
.deal-timer-wrap { border: 1px solid var(--rg-line-strong) !important; border-radius: 0 !important; background: rgba(5, 20, 17, .76) !important; box-shadow: none !important; }
.deal-time { border-color: var(--rg-line) !important; background: transparent !important; }
.deal-time strong { color: var(--rg-mint) !important; font-family: 'DM Mono', monospace !important; }
.standout-lead { align-items: start !important; }
.standout-grid, .services-grid, .process-grid, .tiers, .testimonial-grid, .about-fit {
  gap: 1px !important;
  border-color: var(--rg-line) !important;
  background: var(--rg-line) !important;
}
.standout-card, .service-card, .process-card, .tier, .about-block, .faq-item,
.project-feature, .testimonial-card, .inquiry-form {
  border-color: var(--rg-line) !important;
  border-radius: 0 !important;
  background: rgba(5, 20, 17, .82) !important;
  box-shadow: none !important;
  color: var(--rg-ink) !important;
}
.standout-card { min-height: 26rem !important; display: flex; flex-direction: column; justify-content: space-between; }
.standout-card > span { color: var(--rg-mint) !important; font-family: 'DM Mono', monospace !important; }
.standout-card p, .standout-card li, .service-card p, .process-card p, .tier .desc { color: var(--rg-muted) !important; }
.service-card { padding: clamp(1.6rem, 4vw, 3.2rem) !important; cursor: pointer !important; }
.service-card::after { display: none !important; }
.service-card:hover, .process-card:hover, .tier:hover, .project-feature:hover { background: rgba(51, 239, 196, .038) !important; box-shadow: none !important; }
.service-card .top, .service-card .service-detail, .service-card .service-outcome { position: relative; z-index: 1; }
.service-detail { border-color: var(--rg-line) !important; border-radius: 0 !important; background: transparent !important; }
.service-outcome { border-color: var(--rg-line-strong) !important; }
.tag, .tags span { border-color: var(--rg-line-strong) !important; border-radius: 0 !important; background: transparent !important; color: var(--rg-mint-soft) !important; }
.mission-orbit { filter: saturate(.55); }
.project-showcase { gap: 1px !important; background: var(--rg-line); border: 1px solid var(--rg-line); }
.project-feature { border: 0 !important; }
.project-feature:hover { transform: translateY(-4px) !important; }
.project-image, .project-image img { border-radius: 0 !important; }
.project-image img { filter: saturate(.72) brightness(.78); transition: transform .7s var(--rg-ease), filter .7s var(--rg-ease) !important; }
.project-feature:hover .project-image img { filter: saturate(.95) brightness(.9) !important; }
.testimonial-card blockquote { font-family: 'Manrope', sans-serif !important; font-weight: 300; letter-spacing: -.035em; }
.testimonial-card::after { color: rgba(51, 239, 196, .11) !important; }
.process-card .num, .price, .num, .metric strong { color: var(--rg-mint) !important; font-family: 'DM Mono', monospace !important; }
.process-card h3 { color: var(--rg-ink) !important; }
.calculator-fallback, .calc-shell { max-width: var(--rg-max) !important; }
.calc-shell { border-color: var(--rg-line) !important; border-radius: 0 !important; background: rgba(5, 20, 17, .82) !important; box-shadow: none !important; }
.faq-wrap { grid-template-columns: minmax(16rem, .38fr) minmax(0, .9fr) !important; }
.faq-item { border-width: 0 0 1px !important; }
.faq-question { color: var(--rg-ink) !important; min-height: 4.5rem; }
.faq-question span { font-family: 'Manrope', sans-serif !important; font-size: clamp(1.25rem, 2.2vw, 2rem) !important; }
.faq-icon { border-radius: 0 !important; border-color: var(--rg-line-strong) !important; color: var(--rg-mint) !important; }
.contact .inner { max-width: 74rem !important; }
.contact-grid { border-color: var(--rg-line) !important; }
.footer { border-color: var(--rg-line) !important; background: var(--rg-deep) !important; }

/* Pricing and about */
.page-pricing main > section:first-child, .page-about main > section:first-child {
  min-height: 58svh;
  display: flex;
  align-items: flex-end;
  padding: clamp(8rem, 14vw, 13rem) var(--rg-gutter) clamp(4rem, 7vw, 7rem) !important;
  border-bottom: 1px solid var(--rg-line);
}
.page-pricing main > section:first-child h1, .page-about main > section:first-child h1 { font-size: clamp(3.7rem, 8.7vw, 9rem) !important; }
.page-pricing .tiers { grid-template-columns: repeat(3, 1fr) !important; }
.tier { padding: clamp(1.5rem, 3vw, 2.8rem) !important; }
.tier.highlight { outline: 1px solid var(--rg-mint) !important; outline-offset: -1px; }
.tier .badge-pop { border-radius: 0 !important; background: var(--rg-mint) !important; color: #00120d !important; }
.tier .cta { border-radius: 0 !important; border-color: var(--rg-line-strong) !important; background: transparent !important; color: var(--rg-ink) !important; }
.pricing-notes, .about-working { max-width: var(--rg-max) !important; padding-bottom: clamp(6rem, 10vw, 10rem) !important; }
.pricing-notes-head, .pricing-notes-list article, .about-working-head, .about-working-list article { border-color: var(--rg-line) !important; }
.pricing-scope-note, .about-fit { border-color: var(--rg-mint) !important; }
.about-fit > div { background: rgba(5, 20, 17, .82) !important; }
.about-portrait { border-color: var(--rg-line-strong) !important; border-radius: 0 !important; background: var(--rg-panel) !important; box-shadow: none !important; }
.about-portrait::before { border-color: var(--rg-line) !important; }
.about-portrait img { min-height: 0; filter: saturate(.72) contrast(1.03) brightness(.84); }

/* Service detail pages */
.detail-shell { background: transparent !important; }
.detail-hero {
  min-height: calc(100svh - var(--rg-nav)) !important;
  max-width: var(--rg-max) !important;
  border-bottom: 1px solid var(--rg-line);
}
.detail-hero h1 { font-size: clamp(3.8rem, 9.5vw, 9.5rem) !important; max-width: 10ch; }
.detail-hero .lead { max-width: 62ch; color: var(--rg-muted) !important; }
.hero-card { border: 1px solid var(--rg-line-strong) !important; border-radius: 0 !important; background: rgba(5, 20, 17, .82) !important; box-shadow: none !important; }
.metric { border-color: var(--rg-line) !important; }
.content { max-width: var(--rg-max) !important; padding-bottom: clamp(5rem, 10vw, 9rem) !important; }
.doc-grid, .steps, .related-links, .faq-block { border-color: var(--rg-line) !important; background: var(--rg-line) !important; }
.doc-panel, .step, .related-intro, .related-links a, .faq-block .faq-copy, .faq-block .faq-list, .faq-item { background: rgba(5, 20, 17, .84) !important; }
.doc-panel h2 { max-width: 12ch; }
.list li { color: #bdd0ca !important; }
.list li::before { content: '■' !important; font-size: .46rem; color: var(--rg-mint) !important; }
.field-guide, .field-guide-head, .field-guide-body article { border-color: var(--rg-line) !important; }
.field-guide-head h2 { max-width: 11ch !important; }
.guide-index { font-family: 'DM Mono', monospace !important; color: var(--rg-mint) !important; }
.scope-note { border-color: var(--rg-mint) !important; }
.related-links a:hover { background: rgba(51, 239, 196, .045) !important; }
.cta-band { border-color: var(--rg-line-strong) !important; background: rgba(51, 239, 196, .035) !important; }
.faq-question { color: var(--rg-ink) !important; }

/* Blog hubs and articles */
.blog-shell { background: transparent !important; }
.blog-shell::after { display: none !important; }
.blog-breadcrumbs { max-width: var(--rg-max) !important; padding-top: 1rem !important; }
.blog-shell .hero {
  min-height: calc(78svh - var(--rg-nav)) !important;
  padding: clamp(7rem, 12vw, 11rem) var(--rg-gutter) clamp(4rem, 8vw, 7rem) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--rg-line);
}
.blog-shell .hero::after { display: none !important; }
.blog-shell .hero-inner { max-width: var(--rg-max) !important; align-items: end !important; }
.blog-shell .hero h1 { font-size: clamp(3.6rem, 8.5vw, 8.5rem) !important; max-width: 11ch; }
.article-hero h1 { font-size: clamp(3.2rem, 7vw, 7rem) !important; max-width: 14ch !important; }
.hero-copy { max-width: 62ch; color: var(--rg-muted) !important; }
.hero-panel { border-color: var(--rg-line-strong) !important; border-radius: 0 !important; background: rgba(5, 20, 17, .82) !important; box-shadow: none !important; }
.hero-panel::before { display: none !important; }
.signal { border-color: var(--rg-line) !important; background: var(--rg-line) !important; }
.signal div { background: var(--rg-panel) !important; }
.signal strong { font-family: 'DM Mono', monospace !important; color: var(--rg-mint) !important; }
.blog-shell .section { max-width: var(--rg-max) !important; }
.article-grid, .deep-doc, .article-layout, .related-grid, .timeline { border-color: var(--rg-line) !important; background: var(--rg-line) !important; }
.article-card, .deep-doc > *, .article-aside, .article-content, .related-grid a, .timeline-item {
  border-radius: 0 !important;
  background: rgba(5, 20, 17, .86) !important;
}
.article-card { min-height: 28rem; padding: clamp(1.5rem, 3vw, 2.7rem) !important; display: flex; flex-direction: column; justify-content: space-between; }
.article-card::before { display: none !important; }
.article-card:hover, .related-grid a:hover { background: rgba(51, 239, 196, .048) !important; transform: translateY(-3px) !important; }
.article-card h3, .related-grid strong { font-family: 'Manrope', sans-serif !important; }
.tags span, .article-meta span { border-color: var(--rg-line-strong) !important; border-radius: 0 !important; background: transparent !important; color: var(--rg-mint-soft) !important; }
.deep-doc { grid-template-columns: minmax(15rem, .34fr) minmax(0, 1fr) !important; }
.doc-list button { border-radius: 0 !important; color: var(--rg-muted) !important; min-height: 44px; }
.doc-list button.active { color: var(--rg-mint) !important; background: rgba(51, 239, 196, .04) !important; }
.article-body { max-width: var(--rg-max) !important; }
.article-layout { grid-template-columns: minmax(15rem, .3fr) minmax(0, 1fr) !important; }
.article-aside { top: calc(var(--rg-nav) + 1rem) !important; }
.article-aside li::before, .timeline-item strong { font-family: 'DM Mono', monospace !important; color: var(--rg-mint) !important; }
.article-content { padding: clamp(1.5rem, 5vw, 5rem) !important; }
.article-content > * { max-width: var(--rg-reading); }
.article-content h2 { max-width: 14ch; margin-top: clamp(3rem, 7vw, 6rem) !important; }
.article-content h2:first-child { margin-top: 0 !important; }
.article-content h3 { max-width: 22ch; }
.article-content p { color: #a9beb8 !important; }
.article-content .note { border-color: var(--rg-mint) !important; background: rgba(51, 239, 196, .035) !important; color: #d1eee5 !important; }
.checklist li::before { color: var(--rg-mint) !important; }
.comparison-wrap, .comparison-table th, .comparison-table td { border-color: var(--rg-line) !important; }
.comparison-table { background: var(--rg-panel) !important; }
.comparison-table th { background: rgba(51, 239, 196, .05) !important; }
.cta { border-color: var(--rg-line-strong) !important; background: rgba(51, 239, 196, .035) !important; color: var(--rg-ink) !important; }
.cta::before { display: none !important; }
.read-more { color: var(--rg-mint) !important; }

/* Case studies */
.case-shell { background: transparent !important; }
.case-hero {
  max-width: var(--rg-max) !important;
  min-height: calc(78svh - var(--rg-nav)) !important;
  display: flex !important;
  flex-direction: column;
  justify-content: flex-end;
  border-bottom: 1px solid var(--rg-line);
}
.case-hero::before { display: none !important; }
.case-hero h1 { font-size: clamp(4rem, 10vw, 10rem) !important; }
.case-lead { max-width: 70ch; color: var(--rg-muted) !important; }
.case-meta { border-color: var(--rg-line) !important; background: var(--rg-line) !important; }
.case-meta div { background: var(--rg-panel) !important; }
.case-meta span { font-family: 'DM Mono', monospace !important; }
.case-visual { max-width: var(--rg-max) !important; padding-top: clamp(3rem, 7vw, 6rem) !important; }
.browser-frame { border-color: var(--rg-line-strong) !important; border-radius: 0 !important; background: var(--rg-panel) !important; box-shadow: none !important; }
.browser-frame img { filter: saturate(.75) brightness(.82); }
.case-content { max-width: 86rem !important; }
.case-intro { align-items: start !important; }
.case-grid { border-color: var(--rg-line) !important; background: var(--rg-line) !important; }
.case-card { background: rgba(5, 20, 17, .86) !important; }
.case-card span { font-family: 'DM Mono', monospace !important; color: var(--rg-mint) !important; }
.feature-band { border-color: var(--rg-line-strong) !important; background: rgba(51, 239, 196, .03) !important; }
.quote { background: var(--rg-panel) !important; color: var(--rg-ink) !important; border: 1px solid var(--rg-line-strong); }
.quote blockquote { font-family: 'Manrope', sans-serif !important; font-weight: 300; letter-spacing: -.04em; }
.quote::before { color: rgba(51, 239, 196, .14) !important; }
.quote cite { color: var(--rg-muted) !important; font-family: 'DM Mono', monospace; }
.case-footer { border-color: var(--rg-line) !important; max-width: var(--rg-max) !important; }

/* Legal and privacy */
.legal-nav { display: flex !important; align-items: center !important; justify-content: space-between !important; }
.legal-hero {
  max-width: 76rem !important;
  min-height: 58svh !important;
  margin: 0 auto !important;
  padding: clamp(8rem, 13vw, 12rem) var(--rg-gutter) clamp(4rem, 7vw, 6rem) !important;
  border-bottom: 1px solid var(--rg-line) !important;
}
.legal-hero h1 { font-size: clamp(3.8rem, 9vw, 8.5rem) !important; }
.legal-content { max-width: 76rem !important; padding-inline: var(--rg-gutter) !important; }
.legal-section { border-color: var(--rg-line) !important; padding-block: clamp(3rem, 7vw, 6rem) !important; }
.legal-section h2 { color: var(--rg-ink) !important; font-size: clamp(2.1rem, 4vw, 4rem) !important; }
.legal-section h3 { color: var(--rg-mint-soft) !important; }
.legal-section p, .legal-section li { max-width: var(--rg-reading); color: #a9beb8 !important; }
.legal-table { border-color: var(--rg-line) !important; background: var(--rg-line) !important; }
.legal-table > div { background: rgba(5, 20, 17, .86) !important; border-color: var(--rg-line) !important; overflow-wrap: anywhere; }
.legal-table > div:nth-child(odd) { font-family: 'DM Mono', monospace !important; color: var(--rg-muted) !important; }
.legal-note { border-color: var(--rg-mint) !important; background: rgba(51, 239, 196, .035) !important; }
.legal-content a { color: var(--rg-mint-soft) !important; }
.legal-footer { border-color: var(--rg-line) !important; background: var(--rg-deep) !important; color: var(--rg-muted) !important; line-height: 2; }

/* Forms and consent */
.inquiry-form label { color: var(--rg-muted) !important; font-family: 'DM Mono', monospace !important; }
.inquiry-form input, .inquiry-form select, .inquiry-form textarea {
  border-color: var(--rg-line-strong) !important;
  border-radius: 0 !important;
  background: rgba(2, 9, 7, .72) !important;
  color: var(--rg-ink) !important;
  min-height: 3rem;
}
.analytics-consent {
  border-color: var(--rg-line-strong) !important;
  border-radius: 0 !important;
  background: rgba(2, 13, 10, .97) !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, .48) !important;
  color: var(--rg-ink) !important;
  font-family: 'Manrope', sans-serif !important;
}
.analytics-consent__copy p { color: var(--rg-muted) !important; }
.analytics-consent__copy a { color: var(--rg-mint) !important; }
.analytics-consent button, .analytics-consent-settings { font-family: 'DM Mono', monospace !important; }
.analytics-consent__actions button, .analytics-consent-settings { border-radius: 0 !important; }
.analytics-consent__accept { background: var(--rg-mint) !important; color: #00120d !important; box-shadow: none !important; }
.analytics-consent__reject { border-color: var(--rg-line-strong) !important; color: var(--rg-ink) !important; }
.analytics-consent-settings { border-color: var(--rg-line) !important; background: rgba(2, 13, 10, .9) !important; color: var(--rg-muted) !important; }
.theme-toggle-orb, .theme-toggle[aria-pressed='true'] .theme-toggle-orb { background: var(--rg-mint) !important; box-shadow: 0 0 18px rgba(51, 239, 196, .28) !important; }

:focus-visible { outline: 2px solid var(--rg-mint) !important; outline-offset: 4px !important; }

@media (max-width: 1000px) {
  body::before { background-size: 52px 52px; }
  .navbar, .detail-nav, .blog-nav, .case-nav, .legal-nav { padding-inline: 1.15rem !important; }
  .page-pricing .tiers { grid-template-columns: 1fr !important; }
  .detail-hero, .blog-shell .hero-inner { grid-template-columns: 1fr !important; }
  .detail-hero { align-items: end !important; }
  .hero-card, .hero-panel { width: min(100%, 38rem); }
  .article-layout, .deep-doc { grid-template-columns: 1fr !important; }
  .article-aside { position: relative !important; top: auto !important; }
  .article-aside ol { grid-template-columns: repeat(2, 1fr); }
  .faq-wrap { grid-template-columns: 1fr !important; }
}

@media (max-width: 760px) {
  :root { --rg-nav: 4.4rem; }
  body::before { background-size: 44px 44px; }
  h1 { overflow-wrap: anywhere; }
  p { line-height: 1.72; }
  .nav-links { background: var(--rg-deep) !important; border-color: var(--rg-line) !important; }
  .page-home .hero, .detail-hero, .blog-shell .hero, .case-hero, .legal-hero { min-height: auto !important; }
  .page-home .hero { padding-top: 7rem !important; padding-bottom: 5rem !important; }
  .page-home .hero h1 { font-size: clamp(3.15rem, 15vw, 5.5rem) !important; }
  .hero-grid, .about-hero-grid, .standout-lead, .limited-deal-inner, .case-intro,
  .pricing-notes-head, .pricing-notes-list article, .about-working-head, .about-working-list article { grid-template-columns: 1fr !important; }
  .hero-side { margin-top: 1rem; }
  .hero-proof-card { width: 100% !important; margin: 0 !important; }
  .standout-grid, .project-showcase, .testimonial-grid, .case-grid, .related-grid,
  .doc-grid, .steps, .related-links, .faq-block, .article-grid { grid-template-columns: 1fr !important; }
  .standout-card, .article-card { min-height: auto !important; }
  .project-image { aspect-ratio: 4 / 3 !important; }
  .about-portrait { max-width: 100% !important; margin: 2rem 0 0 !important; }
  .about-portrait img { height: min(128vw, 38rem) !important; object-position: center 16% !important; }
  .page-pricing main > section:first-child, .page-about main > section:first-child { min-height: auto; padding-top: 8rem !important; }
  .field-guide-head, .field-guide-body article { grid-template-columns: 1fr !important; }
  .field-guide-head > span { grid-row: auto !important; }
  .scope-note { margin-left: 0 !important; }
  .article-aside ol { grid-template-columns: 1fr; }
  .article-content { padding: 1.4rem !important; }
  .article-content h2 { font-size: clamp(2.3rem, 11vw, 4rem) !important; }
  .article-content h3 { font-size: clamp(1.75rem, 8vw, 2.8rem) !important; }
  .timeline-item { grid-template-columns: 4rem 1fr !important; gap: 1rem !important; }
  .comparison-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .comparison-table { min-width: 42rem; }
  .case-meta { grid-template-columns: 1fr 1fr !important; }
  .case-visual { padding-inline: 1rem !important; }
  .browser-frame img { min-height: 15rem; object-fit: cover; object-position: center; }
  .legal-table { grid-template-columns: 1fr !important; }
  .legal-table > div:nth-child(odd) { padding-bottom: .25rem !important; border-bottom: 0 !important; }
  .legal-table > div:nth-child(even) { padding-top: .25rem !important; }
  .legal-footer { padding-inline: 1.15rem !important; }
  input, select, textarea { font-size: 16px !important; }
}

@media (max-width: 600px) {
  .blog-nav { min-height: var(--rg-nav) !important; flex-direction: row !important; align-items: center !important; }
  .blog-nav .nav-cluster { flex-wrap: nowrap !important; }
  .blog-nav .nav-cluster .pill:not(.primary), .blog-nav .theme-toggle { display: none !important; }
  .blog-nav .nav-cluster .pill.active { display: inline-flex !important; }
  .detail-nav, .case-nav { align-items: center !important; }
  .detail-breadcrumbs span[aria-current='page'], .detail-nav .theme-toggle, .case-nav .pill:not(.primary) { display: none !important; }
  .detail-nav .pill.primary, .case-nav .pill.primary { padding-inline: .75rem !important; font-size: .6rem !important; }
  .case-meta { grid-template-columns: 1fr !important; }
  .cta { align-items: flex-start !important; flex-direction: column !important; }
}

/* Mobile header refinement across service and case-study templates. */
@media (max-width: 600px) {
  .detail-nav {
    min-height: 4.4rem !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .75rem !important;
  }
  .detail-nav .brand { flex: 0 0 auto; }
  .detail-nav .nav-actions { flex: 0 0 auto; flex-wrap: nowrap !important; justify-content: flex-end !important; }
  .detail-nav .pill:not(.primary) { display: none !important; }
  .detail-nav .pill.primary { min-height: 2.75rem !important; white-space: nowrap; }
  .detail-hero h1 {
    max-width: 100% !important;
    font-size: clamp(2.6rem, 13.5vw, 4.6rem) !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }
  .case-nav .nav-actions { flex-wrap: nowrap !important; }
  .case-nav .pill.primary {
    min-width: 9rem;
    min-height: 2.75rem !important;
    padding-inline: .75rem !important;
    white-space: nowrap;
    font-size: 0 !important;
  }
  html[lang='hu'] .case-nav .pill.primary::after { content: 'Projektet indítok'; }
  html[lang='en'] .case-nav .pill.primary::after { content: 'Start a project'; }
  html[lang='de'] .case-nav .pill.primary::after { content: 'Projekt starten'; }
  .case-nav .pill.primary::after { font: 500 .56rem/1 'DM Mono', monospace; letter-spacing: .04em; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
