/* ==========================================
   ELVO/ELVO ENHANCEMENTS - Design & UX Improvements
   Modern animations, dark mode, improved accessibility

   Tokenii (culori, shadow, spacing, type, motion) sunt definiti
   in site.css :root — nu duplica :root aici.
   ========================================== */

/* === DARK MODE COMPONENT OVERRIDES === */

/* Dark mode specific adjustments */
[data-theme="dark"] body {
  background: var(--paper);
  color: var(--ink);
}

[data-theme="dark"] .site-header {
  background: rgba(15, 22, 18, 0.95);
  backdrop-filter: blur(12px);
  border-bottom-color: var(--line);
}

[data-theme="dark"] .button-primary {
  box-shadow: 0 4px 16px rgba(184, 224, 85, 0.25);
}

[data-theme="dark"] .button-dark {
  color: var(--white);
}

[data-theme="dark"] .button-primary:hover {
  box-shadow: 0 6px 24px rgba(184, 224, 85, 0.35);
}

[data-theme="dark"] .art-dashboard {
  box-shadow: 6px 20px 0 rgba(184, 224, 85, 0.15);
}

[data-theme="dark"] img {
  opacity: 0.9;
  transition: opacity var(--transition-base);
}

[data-theme="dark"] img:hover {
  opacity: 1;
}

/* === DARK MODE TOGGLE BUTTON === */
.theme-toggle {
  position: relative;
  width: 48px;
  height: 48px;
  border: none;
  background: transparent;
  cursor: pointer;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--transition-base), transform var(--transition-fast);
}

.theme-toggle:hover {
  background: var(--sage);
  transform: scale(1.05);
}

.theme-toggle:active {
  transform: scale(0.95);
}

.theme-toggle svg {
  width: 22px;
  height: 22px;
  color: var(--forest);
  transition: transform var(--transition-smooth), opacity var(--transition-base);
}

.theme-toggle .icon-sun {
  position: absolute;
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.theme-toggle .icon-moon {
  position: absolute;
  opacity: 0;
  transform: rotate(180deg) scale(0.5);
}

[data-theme="dark"] .theme-toggle .icon-sun {
  opacity: 0;
  transform: rotate(-180deg) scale(0.5);
}

[data-theme="dark"] .theme-toggle .icon-moon {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

/* === ENHANCED ANIMATIONS === */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(0.9);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes slideInUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-20px);
  }
}

@keyframes pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.8;
    transform: scale(1.05);
  }
}

@keyframes shimmer {
  0% {
    background-position: -1000px 0;
  }
  100% {
    background-position: 1000px 0;
  }
}

/* Intersection Observer animation classes (hidden only when JS runs; see elvo-js-guard) */
html.elvo-js-guard .animate-on-scroll {
  opacity: 0;
}

.animate-on-scroll.animate-in {
  animation: fadeInUp var(--animation-duration) var(--animation-easing) forwards;
}

.animate-fade-in {
  animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-fade-in-delay-1 {
  animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.1s forwards;
}

.animate-fade-in-delay-2 {
  animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s forwards;
}

.animate-fade-in-delay-3 {
  animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.3s forwards;
}

/* === MICRO-INTERACTIONS === */

/* Enhanced button interactions */
.button {
  position: relative;
  overflow: hidden;
  transition: all var(--transition-base);
}

.button::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.3);
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}

.button:active::before {
  width: 300px;
  height: 300px;
}

/* Card hover effects */
.service-card,
.price-card,
.industry-card,
.case-card {
  transition: all var(--transition-base);
  position: relative;
}

.service-card::after,
.price-card::after,
.industry-card::after,
.case-card::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  opacity: 0;
  transition: opacity var(--transition-base);
  pointer-events: none;
  background: linear-gradient(
    135deg,
    rgba(200, 241, 107, 0.1) 0%,
    transparent 50%
  );
}

.service-card:hover::after,
.price-card:hover::after,
.industry-card:hover::after,
.case-card:hover::after {
  opacity: 1;
}

/* Enhanced focus states for accessibility */
*:focus-visible {
  outline: 3px solid var(--lime);
  outline-offset: 4px;
  transition: outline-offset var(--transition-fast);
}

a:focus-visible,
button:focus-visible {
  outline-offset: 6px;
}

/* Smooth scroll behavior */
html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}

/* === IMPROVED LOADING STATES === */
.loading-skeleton {
  background: linear-gradient(
    90deg,
    var(--line) 0px,
    rgba(200, 241, 107, 0.1) 40px,
    var(--line) 80px
  );
  background-size: 1000px 100%;
  animation: shimmer 1.5s infinite linear;
  border-radius: 8px;
}

/* === SCROLL INDICATORS === */
.scroll-indicator {
  position: fixed;
  top: 0;
  left: 0;
  height: 4px;
  background: linear-gradient(
    90deg,
    var(--lime) 0%,
    var(--forest) 100%
  );
  transform-origin: left;
  z-index: 9999;
  transition: transform var(--transition-fast);
}

/* === IMPROVED FORM ELEMENTS === */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea,
select {
  transition: all var(--transition-base);
  border: 2px solid var(--line);
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus {
  border-color: var(--forest);
  box-shadow: 0 0 0 4px rgba(33, 77, 59, 0.1);
}

[data-theme="dark"] input[type="text"]:focus,
[data-theme="dark"] input[type="email"]:focus,
[data-theme="dark"] input[type="tel"]:focus,
[data-theme="dark"] input[type="url"]:focus,
[data-theme="dark"] textarea:focus,
[data-theme="dark"] select:focus {
  box-shadow: 0 0 0 4px rgba(61, 122, 92, 0.2);
}

/* === ENHANCED TOOLTIPS === */
[data-tooltip] {
  position: relative;
  cursor: help;
}

[data-tooltip]::before {
  content: attr(data-tooltip);
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(-4px);
  padding: 8px 12px;
  background: var(--deep);
  color: var(--lime);
  font-size: 11px;
  font-weight: 600;
  border-radius: 6px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: all var(--transition-base);
  z-index: 1000;
  box-shadow: var(--shadow-lg);
}

[data-tooltip]::after {
  content: '';
  position: absolute;
  bottom: calc(100% + 2px);
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-top-color: var(--deep);
  opacity: 0;
  pointer-events: none;
  transition: all var(--transition-base);
}

[data-tooltip]:hover::before,
[data-tooltip]:focus-visible::before {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

[data-tooltip]:hover::after,
[data-tooltip]:focus-visible::after {
  opacity: 1;
}

/* === IMPROVED NAVIGATION ANIMATIONS === */
.nav-link {
  position: relative;
  transition: color var(--transition-base);
}

.nav-link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--lime);
  transition: width var(--transition-base);
}

.nav-link:hover::after,
.nav-link.is-current::after {
  width: 100%;
}

/* === ENHANCED HERO SLIDER === */
.hero-slide {
  transition: opacity var(--transition-smooth), transform var(--transition-smooth);
}

.hero-slide:not(.is-active) {
  opacity: 0;
  transform: translateX(-30px);
}

.hero-dot {
  position: relative;
  transition: all var(--transition-base);
  overflow: hidden;
}

.hero-dot::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--lime);
  transform: scale(0);
  transition: transform var(--transition-base);
  border-radius: inherit;
}

.hero-dot.is-active::before {
  transform: scale(1);
}

/* === RESPONSIVE ENHANCEMENTS === */
@media (max-width: 980px) {
  .theme-toggle {
    width: 44px;
    height: 44px;
  }
  
  .theme-toggle svg {
    width: 20px;
    height: 20px;
  }
}

@media (max-width: 720px) {
  .theme-toggle {
    width: 44px;
    height: 44px;
  }
  
  .theme-toggle svg {
    width: 18px;
    height: 18px;
  }
  
  /* Reduce animation complexity on mobile */
  .animate-on-scroll {
    animation-duration: 0.4s !important;
  }
}

/* === ACCESSIBILITY IMPROVEMENTS === */

/* Skip to content link */
.skip-link {
  position: absolute;
  top: -100px;
  left: 20px;
  background: var(--forest);
  color: var(--lime);
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: 700;
  text-decoration: none;
  z-index: 10000;
  transition: top var(--transition-base);
}

.skip-link:focus {
  top: 20px;
  outline: 3px solid var(--lime);
  outline-offset: 4px;
}

/* Screen reader only content */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* Focus trap for modals */
[role="dialog"] {
  animation: slideInUp var(--transition-slow) var(--animation-easing);
}

/* Keyboard navigation indicators */
:focus-visible {
  box-shadow: 0 0 0 3px var(--paper), 0 0 0 6px var(--lime);
  transition: box-shadow var(--transition-fast);
}

/* === PRINT STYLES === */
@media print {
  .theme-toggle,
  .scroll-indicator,
  .mobile-toggle,
  [data-theme="dark"] {
    --paper: #fff;
    --ink: #000;
    --forest: #214d3b;
  }
}

/* === REDUCED MOTION PREFERENCES === */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  
  .animate-on-scroll,
  .hero-slide,
  .hero-art-slide-wrap {
    animation: none !important;
  }

  /* Never leave scroll-reveal content hidden for reduced-motion users. */
  .animate-on-scroll {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* === JS-TOGGLED MOTION CLASSES (set by optimizeAnimations) === */
/* Comutator manual tema reduce-motion + dispozitive detectate slab-performante. */
html.reduce-motion *,
html.reduce-motion *::before,
html.reduce-motion *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
}

html.reduce-motion .animate-on-scroll,
html.reduce-motion .hero-slide,
html.reduce-motion .hero-art-slide-wrap {
  animation: none !important;
}

html.reduce-motion .animate-on-scroll {
  opacity: 1 !important;
  transform: none !important;
}

html.reduce-motion [data-parallax] {
  transform: none !important;
}

/* Dispozitive cu <=4 nuclee: animatii mai simple, fara transform 3D/scroll costisitor. */
html.low-performance *,
html.low-performance *::before,
html.low-performance *::after {
  animation-duration: 0.3s !important;
  animation-iteration-count: 1 !important;
}

html.low-performance [data-parallax] {
  transform: none !important;
}

/* === HIGH CONTRAST MODE === */
@media (prefers-contrast: high) {
  :root {
    --line: #999;
    --muted: #333;
  }
  
  .button {
    border: 2px solid currentColor;
  }
  
  a:not(.button) {
    text-decoration: underline;
  }
}

/* ==========================================
   DARK MODE REFINEMENTS — tokenii dark sunt in site.css.
   Aici raman doar override-urile de componenta.
   ========================================== */
[data-theme="dark"] body {
  background: var(--paper);
}

[data-theme="dark"] .site-header {
  background: rgba(15, 22, 18, 0.92);
}

[data-theme="dark"] .mega-menu {
  background: var(--paper);
  border-color: var(--line);
}

[data-theme="dark"] .guide-nav,
[data-theme="dark"] .bento-nav,
[data-theme="dark"] .path-nav {
  background: var(--paper-soft);
  border-color: var(--line);
}

[data-theme="dark"] .guide-nav a,
[data-theme="dark"] .bento-nav a,
[data-theme="dark"] .path-nav a {
  background: var(--surface-1);
  border-color: var(--line);
  color: var(--ink);
}

[data-theme="dark"] .guide-nav a:hover,
[data-theme="dark"] .bento-nav a:hover,
[data-theme="dark"] .path-nav a:hover {
  border-color: var(--forest);
}

[data-theme="dark"] .calculator-main {
  background: var(--surface-1);
}

[data-theme="dark"] .calculator-progress {
  background: var(--surface-2);
}

[data-theme="dark"] .choice-card {
  background: var(--surface-1);
  border-color: var(--line);
}

[data-theme="dark"] .choice-card:has(input:checked) {
  background: var(--surface-2);
  border-color: var(--forest);
}

[data-theme="dark"] .choice-icon {
  background: var(--surface-2);
  color: var(--lime);
}

[data-theme="dark"] .choice-card small,
[data-theme="dark"] .step-tab {
  color: var(--muted);
}

[data-theme="dark"] .review-empty,
[data-theme="dark"] .news-empty {
  background: var(--surface-2);
}

[data-theme="dark"] .review-quote {
  background: var(--surface-1);
  color: var(--lime);
}

[data-theme="dark"] .about-statement {
  background: var(--surface-2);
}

[data-theme="dark"] .about-values > span {
  border-color: var(--line);
}

[data-theme="dark"] .services-duo-against,
[data-theme="dark"] .services-excluded {
  background: var(--surface-1);
  border-color: var(--line);
}

[data-theme="dark"] .services-duo-against .services-duo-title {
  color: var(--muted);
}

[data-theme="dark"] .inline-note,
[data-theme="dark"] .legal-note,
[data-theme="dark"] .services-compare-note {
  background: var(--surface-2);
  border-color: var(--line);
  color: var(--text-soft);
}

[data-theme="dark"] .highlight-row {
  border-block-color: var(--line);
}

[data-theme="dark"] .hero-assurances {
  color: var(--muted);
}

[data-theme="dark"] .breadcrumbs {
  color: var(--muted);
}

[data-theme="dark"] .breadcrumbs > a {
  color: var(--forest);
}

[data-theme="dark"] .contact-card {
  background: var(--surface-1);
}

[data-theme="dark"] .contact-card-num {
  background: var(--surface-2);
  color: var(--lime);
}

[data-theme="dark"] .art-dashboard {
  box-shadow: 6px 20px 0 rgba(184, 224, 85, 0.18);
}

[data-theme="dark"] .phd-acc-tag {
  background: var(--paper);
  color: var(--forest);
}

[data-theme="dark"] .empty-results {
  color: var(--muted);
}

@media (prefers-reduced-motion: reduce) {
  [data-theme="dark"] .art-cube,
  [data-theme="dark"] .phd-cube-a,
  [data-theme="dark"] .phd-cube-b,
  [data-theme="dark"] .phd-cube-c,
  [data-theme="dark"] .phd-acc-chip-float {
    animation: none !important;
  }
}

/* ==========================================
   REVIEWS CAROUSEL — real, consent-based
   reviews only; the honest empty state still
   shows when data/reviews.json is absent.
   ========================================== */
.reviews-carousel {
  max-width: 860px;
  margin: 0 auto;
}

.reviews-carousel .eyebrow {
  display: block;
  text-align: center;
  margin-bottom: 22px;
}

.reviews-stage {
  display: grid;
  min-height: 220px;
}

.review-card {
  grid-area: 1 / 1;
  position: relative;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 30px 34px 26px;
  opacity: 0.14;
  transform: scale(0.955) translateY(10px);
  transition: opacity 0.5s ease, transform 0.5s ease, box-shadow 0.5s ease;
  pointer-events: none;
  align-self: start;
}

.review-card.is-active {
  opacity: 1;
  transform: none;
  box-shadow: 0 26px 70px rgba(18, 54, 40, 0.14);
  z-index: 2;
  pointer-events: auto;
}

.review-card-mark {
  position: absolute;
  top: 18px;
  right: 22px;
  color: var(--lime);
}

.review-card blockquote {
  margin: 0;
  font-size: 19px;
  line-height: 1.55;
  letter-spacing: -0.01em;
  font-weight: 600;
  color: var(--ink);
  max-width: 640px;
}

.review-card blockquote::before {
  content: "„";
}

.review-card blockquote::after {
  content: "”";
}

.review-card-footer {
  margin-top: 22px;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 12px;
}

.review-card-footer cite {
  font-style: normal;
  font-weight: 800;
  color: var(--ink);
  letter-spacing: -0.01em;
}

.review-card-meta,
.review-card-context {
  color: var(--muted);
  font-size: 13px;
}

.review-card-source {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  font-size: 13px;
  font-weight: 700;
  color: var(--forest);
}

.review-card-source .icon {
  width: 14px;
  height: 14px;
}

.reviews-controls {
  margin-top: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
}

.reviews-arrow {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1.5px solid var(--line);
  background: var(--paper);
  color: var(--forest);
  cursor: pointer;
  display: grid;
  place-items: center;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.reviews-arrow:hover {
  border-color: var(--forest);
}

.reviews-arrow:focus-visible {
  outline: 3px solid var(--lime);
  outline-offset: 2px;
}

.reviews-arrow .icon {
  width: 18px;
  height: 18px;
}

.reviews-prev .icon {
  transform: rotate(180deg);
}

.reviews-dots {
  display: flex;
  gap: 8px;
}

.reviews-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  border: 0;
  background: var(--line);
  background-clip: content-box;
  cursor: pointer;
  padding: 8px;
  transition: background 0.2s ease, transform 0.2s ease;
}

.reviews-dot.is-active {
  background: var(--forest);
  transform: scale(1.25);
}

.reviews-dot:focus-visible {
  outline: 3px solid var(--lime);
  outline-offset: 2px;
}

[data-theme="dark"] .review-card {
  background: var(--surface-1);
}

[data-theme="dark"] .review-card.is-active {
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.55);
}

[data-theme="dark"] .reviews-arrow {
  background: var(--surface-1);
  border-color: var(--line);
  color: var(--ink);
}

[data-theme="dark"] .reviews-dot {
  background: var(--surface-2);
}

[data-theme="dark"] .reviews-dot.is-active {
  background: var(--lime);
}

@media (max-width: 640px) {
  .review-card {
    padding: 22px 20px 20px;
  }

  .review-card blockquote {
    font-size: 16.5px;
    line-height: 1.5;
  }

  .reviews-carousel {
    max-width: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .review-card {
    transition: none;
  }
}

/* ==========================================
   BLOG — real WordPress posts with category
   filters; the honest empty state shows when
   no posts exist yet.
   ========================================== */
.news-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 28px;
}

.news-editorial {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}

.news-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 18px;
}

.news-card {
  display: flex;
  flex-direction: column;
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px 22px 20px;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.news-card:hover {
  transform: translateY(-3px);
  border-color: var(--forest);
  box-shadow: 0 18px 48px rgba(18, 54, 40, 0.12);
}

.news-card[hidden] {
  display: none;
}

.news-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.news-card-cat {
  display: inline-block;
  background: var(--lime);
  color: var(--deep);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 999px;
}

.news-card time {
  color: var(--muted);
  font-size: 12.5px;
}

.news-card h3 {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 1.35;
  letter-spacing: -0.02em;
}

.news-card h3 a {
  color: var(--ink);
  text-decoration: none;
}

.news-card h3 a:hover {
  color: var(--forest);
}

.news-card p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--muted);
}

.news-card-more {
  margin-top: auto;
  padding-top: 14px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12.5px;
  font-weight: 800;
  color: var(--forest);
}

.news-card-more .icon {
  width: 14px;
  height: 14px;
}

[data-theme="dark"] .news-card {
  background: var(--surface-1);
  border-color: var(--line);
}

[data-theme="dark"] .news-card h3 a {
  color: var(--ink);
}

[data-theme="dark"] .news-card p {
  color: var(--text-soft);
}

[data-theme="dark"] .news-card-more {
  color: var(--lime);
}

@media (prefers-reduced-motion: reduce) {
  .news-card,
  .news-card:hover {
    transform: none;
  }
}

/* ==========================================
   ACCESSIBILITY FALLBACKS — keyboard focus is
   always visible, regardless of component.
   ========================================== */
:focus-visible {
  outline: 2px solid var(--forest);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  ::before,
  ::after {
    animation: none !important;
    transition: none !important;
  }
}

/* ==========================================
   COMPETITOR ANALYSIS PAGE — New Components
   ========================================== */

/* Trust metrics grid below hero */
.competitor-trust {
  padding: 32px 0 48px;
}
.trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 20px;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}
.trust-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--lime);
}
.trust-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--sage);
  color: var(--forest);
}
.trust-icon .icon { width: 22px; height: 22px; }
.trust-number {
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 800;
  line-height: 1;
  color: var(--forest);
  letter-spacing: -0.03em;
}
.trust-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  text-align: center;
  line-height: 1.4;
}

/* CTA band above fold + sticky mobile */
.competitor-cta-band {
  padding: 24px 0;
  background: linear-gradient(180deg, var(--sage) 0%, var(--paper) 100%);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  position: relative;
  z-index: 10;
}
.cta-band-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.cta-band-copy h2 {
  font-size: clamp(22px, 3vw, 30px);
  margin: 0 0 4px;
  line-height: 1.2;
}
.cta-band-copy p {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}
.cta-band-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
/* Sticky on mobile */
@media (max-width: 720px) {
  .competitor-cta-band {
    position: sticky;
    bottom: 0;
    padding: 16px 0;
    background: rgba(248, 249, 243, 0.98);
    backdrop-filter: blur(8px);
    border-top: 1px solid var(--line);
    z-index: 100;
  }
  .cta-band-inner { flex-direction: column; align-items: stretch; }
  .cta-band-copy { text-align: center; }
  .cta-band-actions { justify-content: center; }
  .cta-band-actions .button { flex: 1; justify-content: center; }
}

[data-theme="dark"] .competitor-cta-band {
  background: linear-gradient(180deg, var(--sage) 0%, var(--paper) 100%);
}

/* Deliverables grid */
.deliverables-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  margin-top: 24px;
}
.deliverable-card {
  display: flex;
  gap: 14px;
  padding: 20px 24px;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 14px;
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}
.deliverable-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow);
  border-color: var(--lime);
}
.deliverable-bullet {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: var(--lime);
  color: var(--deep);
}
.deliverable-bullet .icon { width: 16px; height: 16px; }
.deliverable-card p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--ink);
}

/* Methodology & Process content formatting */
.methodology-content,
.process-content {
  max-width: 850px;
}
.methodology-content ol,
.process-content ol {
  margin: 16px 0 0;
  padding-left: 24px;
}
.methodology-content li,
.process-content li {
  margin: 10px 0;
  line-height: 1.8;
}
.methodology-content strong,
.process-content strong {
  color: var(--ink);
}

/* Case study section */
.case-study-section {
  background: var(--sage);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.case-study-content {
  max-width: 850px;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 32px;
  box-shadow: var(--shadow-sm);
}
.case-study-content p {
  margin: 12px 0;
}
.case-study-content strong {
  color: var(--ink);
}

/* Competitor table improvements */
.competitor-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.competitor-table th,
.competitor-table td {
  padding: 14px 16px;
  text-align: left;
  border-bottom: 1px solid var(--line);
  vertical-align: middle;
}
.competitor-table th {
  background: var(--sage);
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
  white-space: nowrap;
}
.competitor-table th:first-child {
  border-radius: 12px 0 0 0;
}
.competitor-table th:last-child {
  border-radius: 0 12px 0 0;
}
.competitor-table tbody tr:last-child td {
  border-bottom: none;
}
.competitor-table tbody tr:hover td {
  background: rgba(200, 241, 107, 0.05);
}
.competitor-table td:first-child {
  font-weight: 600;
  color: var(--ink);
  white-space: nowrap;
}
.competitor-table td strong {
  color: var(--forest);
}
.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-scroll:focus {
  outline: none;
}

/* Differentiators list */
.differentiators-section {
  background: var(--deep);
  color: var(--ink);
}
.differentiators-section .section-heading h2 {
  color: var(--white);
}
.differentiators-section .section-heading p {
  color: #d7e2cf;
}
.diff-list {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 16px;
}
.diff-list li {
  display: flex;
  gap: 14px;
  padding: 20px 24px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  transition: transform var(--transition-base), border-color var(--transition-base), background var(--transition-base);
}
.diff-list li:hover {
  transform: translateY(-3px);
  border-color: var(--lime);
  background: rgba(200, 241, 107, 0.06);
}
.diff-icon {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--lime);
  color: var(--deep);
}
.diff-icon .icon { width: 18px; height: 18px; }
.diff-list li p {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.75;
  color: #e8f0eb;
}

/* FAQ Accordion */
.faq-section {
  padding: 88px 0;
}
.faq-list {
  margin-top: 32px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.faq-item {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--white);
  overflow: hidden;
  transition: border-color var(--transition-base), box-shadow var(--transition-base);
}
.faq-item:hover {
  border-color: var(--lime);
  box-shadow: var(--shadow-sm);
}
.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  background: none;
  border: none;
  text-align: left;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  color: var(--ink);
  cursor: pointer;
  transition: background var(--transition-fast);
}
.faq-question:hover {
  background: var(--sage);
}
.faq-question:focus-visible {
  outline: 3px solid var(--lime);
  outline-offset: -3px;
}
.faq-toggle {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  color: var(--forest);
  transition: transform var(--transition-base);
}
.faq-toggle .icon { width: 20px; height: 20px; }
.faq-item[open] .faq-toggle,
.faq-question[aria-expanded="true"] + .faq-answer ~ .faq-toggle {
  transform: rotate(180deg);
}
.faq-answer {
  padding: 0 24px 20px;
  font-size: 14px;
  line-height: 1.8;
  color: var(--muted);
  animation: fadeInDown 0.3s ease;
}
.faq-answer[hidden] {
  display: none;
}

@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Internal links cards */
.link-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin-top: 24px;
}
.link-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 24px;
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 16px;
  text-decoration: none;
  transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}
.link-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow);
  border-color: var(--lime);
  text-decoration: none;
}
.link-card span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--forest);
}
.link-card h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.3;
  color: var(--ink);
}

/* Responsive adjustments */
@media (max-width: 980px) {
  .trust-grid { grid-template-columns: repeat(2, 1fr); }
  .diff-list { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .trust-grid { grid-template-columns: 1fr; }
  .trust-item { padding: 16px; }
  .trust-number { font-size: 32px; }
  .case-study-content { padding: 20px; }
  .competitor-table { font-size: 12px; }
  .competitor-table th,
  .competitor-table td { padding: 10px 12px; }
  .deliverable-card { padding: 16px 20px; }
  .faq-question { padding: 16px 20px; font-size: 14px; }
  .faq-answer { padding: 0 20px 16px; }
}

/* Dark mode adjustments */
[data-theme="dark"] .trust-item {
  background: var(--white);
  border-color: var(--line);
}
[data-theme="dark"] .trust-icon {
  background: var(--sage);
  color: var(--forest);
}
[data-theme="dark"] .trust-number { color: var(--ink); }
[data-theme="dark"] .trust-label { color: var(--muted); }

[data-theme="dark"] .deliverable-card {
  background: var(--white);
  border-color: var(--line);
}
[data-theme="dark"] .deliverable-card p { color: var(--ink); }

[data-theme="dark"] .case-study-content {
  background: var(--white);
  border-color: var(--line);
}

[data-theme="dark"] .competitor-table th {
  background: var(--sage);
  color: var(--muted);
}
[data-theme="dark"] .competitor-table tbody tr:hover td {
  background: rgba(200, 241, 107, 0.08);
}

[data-theme="dark"] .diff-list li {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.1);
}
[data-theme="dark"] .diff-list li:hover {
  background: rgba(200, 241, 107, 0.08);
  border-color: var(--lime);
}
[data-theme="dark"] .diff-list li p { color: #e8f0eb; }

[data-theme="dark"] .faq-item {
  background: var(--white);
  border-color: var(--line);
}
[data-theme="dark"] .faq-question { color: var(--ink); }
[data-theme="dark"] .faq-question:hover { background: var(--sage); }
[data-theme="dark"] .faq-answer { color: var(--muted); }

[data-theme="dark"] .link-card {
  background: var(--white);
  border-color: var(--line);
}
[data-theme="dark"] .link-card h3 { color: var(--ink); }
[data-theme="dark"] .link-card span { color: var(--forest); }

/* === CONTACT PREMIUM (2026-09): hero compact, trust, chips, steps, ghid colapsabil === */
.contact-trust { list-style: none; display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 30px; padding: 0; }
.contact-trust li { display: inline-flex; align-items: center; gap: 9px; font-size:var(--text-xs); font-weight: 650; color: var(--muted); border: 1px solid var(--line); border-radius: 999px; padding: 9px 16px; background: var(--white); }
.contact-trust .icon { width: 15px; height: 15px; color: var(--forest); flex: none; }

.service-field { display: block; }
.service-legend { display: block; font-size:var(--text-xs); font-weight: 650; margin-bottom: 10px; }
.service-legend span { color: #77934f; }
.service-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.service-chip { font-family: inherit; font-size:var(--text-xs); font-weight: 650; color: var(--forest); background: var(--sage); border: 1px solid var(--line); border-radius: 999px; padding: 11px 18px; cursor: pointer; transition: background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast); }
.service-chip:hover { border-color: var(--forest); transform: translateY(-1px); }
.service-chip.is-active { background: var(--forest); color: var(--lime); border-color: var(--forest); }
.service-chip:focus-visible { outline: 3px solid #9bb779; outline-offset: 2px; }

.lead-form .input { min-height: 52px; font-size: 12px; border-radius: 10px; }
.lead-form .input:focus { box-shadow: 0 0 0 3px rgba(33, 77, 59, 0.12); }
select.input { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23214d3b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; background-size: 16px; padding-right: 42px; cursor: pointer; }

.contact-section .contact-method { background: var(--white); border: 1px solid var(--line); border-radius: 14px; padding: 18px; margin-top: 12px; transition: border-color var(--transition-fast), box-shadow var(--transition-fast); }
.contact-section .contact-method:hover { border-color: var(--line-strong); box-shadow: var(--shadow-sm); }
.contact-section .contact-info > .button { margin-top: 20px; }

.contact-steps { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 40px 0 0; padding: 0; }
.contact-steps li { position: relative; overflow: hidden; background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: 28px 26px 26px; display: flex; flex-direction: column; min-height: 216px; transition: border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast); }
.contact-steps li:hover { border-color: var(--line-strong); box-shadow: var(--shadow-sm); transform: translateY(-2px); }
.contact-steps li::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--lime) 0%, rgba(200, 241, 107, 0) 70%); }
.contact-steps b { font-size: 36px; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: var(--forest); }
.contact-steps span { font-size: 12px; line-height: 1.75; color: var(--muted); overflow-wrap: break-word; }
.contact-steps strong { display: block; font-size: 14px; line-height: 1.45; color: var(--ink); margin: 14px 0 8px; overflow-wrap: break-word; }

/* === FAQ text fit (2026-09): intrebarea nu mai impinge plusul, raspunsurile se incadreaza === */
.faq-item summary > span:first-child { min-width: 0; flex: 1 1 auto; overflow-wrap: break-word; }
.faq-plus { flex: none; }
.faq-item > p { overflow-wrap: anywhere; max-width: 70ch; }

/* === FAQ premium cards (2026-09): un singur sistem, padding echilibrat === */
.faq-layout > div:first-child { position: sticky; top: 110px; align-self: start; }
.faq-ask { margin-top: 26px; background: var(--forest); border-radius: 16px; padding: 24px; color: #fff; }
.faq-ask strong { display: block; font-size: 15px; letter-spacing: -0.01em; }
.faq-ask p { font-size: 11px; line-height: 1.75; color: #b9d1af; margin: 8px 0 18px; }
.faq-list { border-top: none; margin-top: 28px; padding: 0; }
.faq-item { border-radius: 14px; }
.faq-item[open] { border-color: var(--forest); box-shadow: var(--shadow-sm); }
.faq-item summary { padding: 18px 20px; font-size: 14px; font-weight: 650; line-height: 1.55; gap: 16px; align-items: center; }
.faq-plus { width: 34px; height: 34px; border-radius: 50%; background: var(--sage); color: var(--forest); display: inline-flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 400; line-height: 1; }
.faq-item[open] .faq-plus { background: var(--forest); color: var(--lime); }
.faq-item > p { margin: 0; padding: 2px 20px 20px 20px; font-size: 12.5px; line-height: 1.8; color: var(--muted); }
[data-theme="dark"] .faq-plus { background: rgba(200, 241, 107, 0.14); color: var(--lime); }

/* === Consent GDPR aerisit (2026-09): spatiu real intre bifa si text === */
.lead-form .consent-label { gap: 14px; font-size:var(--text-xs); line-height: 1.8; margin-top: 6px; }
.lead-form .consent-label input { width: 19px; height: 19px; margin-top: 1px; flex: none; cursor: pointer; }
.lead-form .consent-label > span { min-width: 0; overflow-wrap: break-word; }

.contact-more { border: 1px solid var(--line); border-radius: 18px; background: var(--white); overflow: hidden; }
.contact-more > summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 22px 24px; cursor: pointer; }
.contact-more > summary::-webkit-details-marker { display: none; }
.contact-more > summary:focus-visible { outline: 3px solid #9bb779; outline-offset: -3px; }
.contact-more-title { font-size: 11px; line-height: 1.8; color: var(--muted); }
.contact-more-title strong { display: block; font-size: 15px; color: var(--ink); }
.more-hint { flex: none; font-size:var(--text-xs); font-weight: 650; letter-spacing: 0.08em; text-transform: uppercase; color: var(--forest); border: 1px solid var(--line); border-radius: 999px; padding: 7px 14px; }
.contact-more[open] .more-hint { display: none; }
.contact-more-body { padding: 0 24px 24px; }
.contact-more-body > .section { padding: 8px 0 0; }
.contact-more-body > .section > .container { width: 100%; }

[data-theme="dark"] .contact-trust li { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); color: #cfd8d2; }
[data-theme="dark"] .contact-trust .icon { color: var(--lime); }
[data-theme="dark"] .service-chip { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); color: #e8f0eb; }
[data-theme="dark"] .service-chip.is-active { background: var(--lime); border-color: var(--lime); color: var(--deep); }
[data-theme="dark"] .contact-section .contact-method,
[data-theme="dark"] .contact-steps li,
[data-theme="dark"] .contact-more { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .contact-steps b { color: var(--lime); }
[data-theme="dark"] .contact-steps strong,
[data-theme="dark"] .contact-more-title strong { color: var(--white); }

@media (max-width: 720px) {
  .contact-layout .lead-form { order: -1; }
  .contact-steps { grid-template-columns: 1fr; }
  .contact-steps li { min-height: 0; padding: 24px 22px; }
  .contact-more-body { padding: 0 16px 16px; }
}

/* === GEO ORHEI premium (2026-09): coverage band + decor harta === */
.geo-coverage { background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 34px 36px; box-shadow: var(--shadow-sm); }
.geo-coverage h2 { font-size: 30px; line-height: 1.2; margin-top: 14px; letter-spacing: -0.02em; }
.geo-coverage ul { list-style: none; display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 0; padding: 0; }
.geo-coverage li { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 650; color: var(--forest); background: var(--sage); border: 1px solid var(--line); border-radius: 999px; padding: 10px 18px; transition: border-color var(--transition-fast), transform var(--transition-fast); }
.geo-coverage li:hover { border-color: var(--forest); transform: translateY(-1px); }
.geo-coverage li .icon { width: 15px; height: 15px; }
.geo-coverage .small { margin-top: 18px; }

.page-hero-decor-orhei .phd-map-card { position: absolute; right: 6%; top: 16%; width: 62%; background: var(--forest); border-radius: 18px; color: var(--cream); padding: 22px 22px 18px; box-shadow: 0 30px 60px rgba(23, 58, 44, 0.35); transform: rotate(-3deg); animation: phdFloatA 11s ease-in-out infinite; }
.phd-map-pin { width: 46px; height: 46px; border-radius: 50%; background: var(--lime); color: var(--deep); display: flex; align-items: center; justify-content: center; }
.phd-map-pin .icon { width: 22px; height: 22px; }
.phd-map-label { font-size: 20px; font-weight: 800; letter-spacing: -0.02em; color: var(--white); margin-top: 14px; }
.phd-map-rows { display: flex; gap: 8px; margin-top: 14px; flex-wrap: wrap; }
.phd-map-rows span { display: inline-flex; align-items: center; gap: 6px; font-size: 9px; font-weight: 650; color: var(--lime); border: 1px solid rgba(200, 241, 107, 0.35); border-radius: 999px; padding: 7px 12px; }
.phd-map-rows .icon { width: 12px; height: 12px; }

[data-theme="dark"] .geo-coverage { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .geo-coverage h2 { color: var(--white); }
[data-theme="dark"] .geo-coverage li { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); color: #e8f0eb; }

@media (max-width: 720px) {
  .geo-coverage { padding: 26px 22px; }
  .geo-coverage h2 { font-size: 25px; }
  .faq-item summary { padding: 16px; font-size: 13px; }
  .faq-item > p { padding: 0 16px 16px 16px; }
  .faq-layout > div:first-child { position: static; }
  .faq-ask { padding: 20px; }
}

/* === STORYTELLING accounting (2026-09): hero underline, metrics, problem, versus === */
.u-draw { font-style: normal; position: relative; white-space: nowrap; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 9 C 30 2, 60 2, 118 8' fill='none' stroke='%23c8f16b' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: 0 100%; background-size: 100% 0.32em; padding-bottom: 0.08em; animation: drawIn 1.1s cubic-bezier(0.16, 1, 0.3, 1) 0.4s both; }
@keyframes drawIn { from { background-size: 0% 0.32em; } to { background-size: 100% 0.32em; } }

.story-metrics { padding-top: 0; margin-top: -70px; position: relative; z-index: 2; }
.story-metrics .metrics-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; background: var(--forest); border-radius: 20px; padding: 34px 36px; box-shadow: var(--shadow); }
.story-metrics .metric { text-align: center; min-width: 0; }
.story-metrics .metric b { display: block; font-size: clamp(38px, 4vw, 54px); font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: var(--lime); font-variant-numeric: tabular-nums; }
.story-metrics .metric b span { font: inherit; }
.story-metrics .metric > span:last-child { display: block; margin-top: 10px; font-size: 10px; line-height: 1.7; color: #b9d1af; overflow-wrap: break-word; }
.story-metrics-fiscal .metrics-row, .story-metrics-srl .metrics-row { background: var(--white); border: 1px solid var(--line); }
.story-metrics-fiscal .metric b, .story-metrics-srl .metric b { color: var(--forest); }
.story-metrics-fiscal .metric > span:last-child, .story-metrics-srl .metric > span:last-child { color: var(--muted); }

.story-problem { padding-top: 0; }
.problem-panel { border-radius: 22px; padding: 48px 52px; background: var(--deep); color: #eef3e9; overflow: hidden; position: relative; }
.problem-panel::after { content: ""; position: absolute; right: -90px; top: -90px; width: 300px; height: 300px; border-radius: 50%; background: radial-gradient(circle, rgba(200, 241, 107, 0.14), transparent 65%); pointer-events: none; }
.problem-panel .eyebrow { color: var(--lime); }
.problem-panel h2 { font-size: clamp(28px, 3.4vw, 42px); line-height: 1.15; margin-top: 16px; color: #fff; max-width: 22ch; }
.problem-panel > p { margin-top: 18px; font-size: 13px; line-height: 1.9; color: #c4d3c4; max-width: 70ch; }
.problem-points { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 30px 0 0; padding: 0; }
.problem-points li { display: flex; gap: 10px; align-items: flex-start; font-size: 11px; line-height: 1.75; color: #dbe5db; background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; padding: 16px 18px; }
.problem-points .icon { width: 16px; height: 16px; color: var(--lime); flex: none; margin-top: 2px; }
.story-problem-fiscal .problem-panel { background: var(--forest); }
.story-problem-srl .problem-panel { background: #1a2420; }
.story-problem-open .problem-panel { border-top: 4px solid var(--lime); }
.story-problem-remote .problem-panel { border-left: 4px solid var(--lime); }

.versus-section { padding-top: 0; }
.versus-table { border-collapse: separate; border-spacing: 0; width: 100%; font-size: 12px; min-width: 620px; background: var(--white); border: 1px solid var(--line); border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-sm); }
.versus-table th, .versus-table td { padding: 18px 22px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; line-height: 1.7; }
.versus-table thead th { background: var(--forest); color: #fff; font-size: 11px; font-weight: 750; letter-spacing: 0.1em; text-transform: uppercase; }
.versus-table thead th.versus-us { background: var(--deep); color: var(--lime); }
.versus-table tbody th { font-weight: 650; font-size: 12.5px; color: var(--ink); width: 26%; }
.versus-table td { color: var(--muted); }
.versus-table tbody tr { transition: background 0.18s ease; }
.versus-table tbody tr:hover td { background: #f4f7ec; }
.versus-table td.versus-us { background: #eef3e3; color: var(--forest); font-weight: 600; }
.versus-table tbody tr:hover td.versus-us { background: #e4eed2; }
.versus-table td.versus-us > span { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: var(--lime); margin-right: 10px; vertical-align: -6px; }
.versus-table td.versus-us .icon { width: 13px; height: 13px; color: var(--deep); }
.versus-table tr:last-child th, .versus-table tr:last-child td { border-bottom: none; }

/* Accounting hero decor variants (shared doc-card skeleton, distinct accents) */
.phd-doc-card { position: absolute; right: 4%; top: 14%; width: 66%; background: var(--forest); border-radius: 18px; color: #f2f6ec; padding: 19px 21px 16px; box-shadow: 0 30px 60px rgba(23, 58, 44, 0.3); transform: rotate(-3deg); animation: phdFloatA 11s ease-in-out infinite; }
.phd-doc-card .phd-acc-row strong .icon { width: 14px; height: 14px; }
.phd-doc-sage { background: var(--sage); color: var(--forest); }
.phd-doc-sage .phd-acc-label { color: #5e7a4e; }
.phd-doc-sage .phd-acc-row { border-color: #c9d6bc; color: var(--forest); }
.phd-doc-sage .phd-acc-row strong { color: var(--forest); }
.phd-chip-sage { background: var(--forest); color: var(--lime); }
.phd-open-bars { display: flex; align-items: flex-end; gap: 8px; height: 74px; margin-top: 14px; }
.phd-open-bars i { flex: 1; border-radius: 6px 6px 2px 2px; background: linear-gradient(180deg, var(--lime), rgba(200, 241, 107, 0.25)); }

/* === Centered premium hero (2026-09): dark stage, animated orbs + dot grid, centered copy === */
.page-hero-center { position: relative; overflow: hidden; text-align: center; padding: 96px 0 88px; background: radial-gradient(900px 480px at 50% -12%, rgba(200, 241, 107, 0.16), transparent 62%), radial-gradient(700px 420px at 88% 115%, rgba(200, 241, 107, 0.07), transparent 60%), linear-gradient(180deg, #1c4a34 0%, var(--deep) 78%); }
.page-hero-center::before { content: ""; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 255, 255, 0.13) 1px, transparent 1.6px); background-size: 26px 26px; mask-image: radial-gradient(720px 420px at 50% 38%, #000 20%, transparent 72%); -webkit-mask-image: radial-gradient(720px 420px at 50% 38%, #000 20%, transparent 72%); pointer-events: none; }
.page-hero-center::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(540px circle at var(--mx, 50%) var(--my, 38%), rgba(200, 241, 107, 0.13), transparent 65%); opacity: 0; transition: opacity 0.45s ease; }
.page-hero-center .container { position: relative; z-index: 1; max-width: 880px; }
.page-hero-center:hover::after { opacity: 1; }
.hero-orbs { position: absolute; inset: 0; pointer-events: none; }
.hero-orbs i { position: absolute; border-radius: 50%; filter: blur(70px); }
.hero-orbs i:nth-child(1) { width: 420px; height: 420px; left: -120px; top: -140px; background: rgba(200, 241, 107, 0.16); animation: phdFloatA 14s ease-in-out infinite; }
.hero-orbs i:nth-child(2) { width: 360px; height: 360px; right: -100px; bottom: -160px; background: rgba(120, 190, 150, 0.18); animation: phdFloatB 17s ease-in-out infinite; }
.page-hero-center .eyebrow { justify-content: center; color: var(--lime); }
.page-hero-center h1 { color: #fff; font-size: clamp(40px, 5.6vw, 74px); max-width: 20ch; margin-left: auto; margin-right: auto; text-wrap: balance; }
.page-hero-center .hero-lead { color: #c2d4c6; margin-left: auto; margin-right: auto; font-size: 16px; }
.page-hero-center .hero-cta-row { justify-content: center; margin-top: 34px; }
.page-hero-center .hero-cta-row .button-text { color: #dceadf; }
.page-hero-center .hero-cta-row .button-lime { box-shadow: 0 14px 40px rgba(200, 241, 107, 0.25); }
.page-hero-center .inline-note { margin-left: auto; margin-right: auto; text-align: left; }

/* === PS hero slider (2026-09): 3 slide-uri suprapuse, fade+rise, dots + sageti === */
.ps-hero .ps-hero-stack { display: grid; }
.ps-slide { grid-area: 1 / 1; min-width: 0; opacity: 0; visibility: hidden; transform: translateY(26px); transition: opacity 0.6s ease, transform 0.6s ease, visibility 0s 0.6s; }
.ps-slide.is-active { opacity: 1; visibility: visible; transform: none; transition: opacity 0.6s ease, transform 0.6s ease; }
.ps-slide-title { font-size: clamp(40px, 5.6vw, 74px); font-weight: 800; letter-spacing: -0.055em; line-height: 1.13; color: #fff; margin-top: 19px; max-width: 20ch; margin-left: auto; margin-right: auto; text-wrap: balance; }
.ps-controls { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 38px; position: relative; z-index: 1; }
.ps-controls [data-ps-prev], .ps-controls [data-ps-next] { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.25); background: transparent; color: #fff; font-size: 17px; cursor: pointer; transition: border-color 0.25s, background 0.25s; display: inline-flex; align-items: center; justify-content: center; }
.ps-controls [data-ps-prev]:hover, .ps-controls [data-ps-next]:hover { border-color: var(--lime); background: rgba(200, 241, 107, 0.12); }
.ps-dots { display: flex; align-items: center; gap: 8px; }
.ps-dots button { width: 8px; height: 8px; border-radius: 99px; border: none; padding: 0; background: rgba(255, 255, 255, 0.28); cursor: pointer; transition: width 0.3s ease, background 0.3s ease; }
.ps-dots button.is-active { width: 30px; background: var(--lime); }

/* === Homepage work grid: 3 cuburi compacte, fara screenshot-uri === */
.work-grid-home { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.work-domain { display: block; background: #e9ede3; border-bottom: 1px solid var(--line); padding: 12px 18px; transition: background 0.2s ease; }
.work-domain:hover { background: var(--sage); }
.work-domain .work-browser-bar { display: flex; align-items: center; gap: 6px; }
.work-domain .work-browser-bar i { width: 8px; height: 8px; border-radius: 50%; background: #b9c4ae; }
.work-domain .work-url { margin-left: 8px; font-size: 11px; font-weight: 600; color: var(--muted); }

@media (max-width: 960px) {
  .work-grid-home { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .work-grid-home { grid-template-columns: 1fr; }
}

/* === Web-creation page: 3 type cards / rows / platforms / tiers / care / help / why === */
.wc-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 12px 0 28px; }
.wc-head h2 { max-width: 640px; }
.wc-all { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 750; color: var(--forest); white-space: nowrap; }
.wc-all:hover { text-decoration: underline; text-underline-offset: 4px; }
.wc-all .icon { width: 16px; height: 16px; }
.wc-center { text-align: center; max-width: 720px; margin-inline: auto; }
.wc-center h2 { margin: 12px 0; }
.wc-types { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.wc-type { display: flex; flex-direction: column; gap: 14px; padding: 34px 30px 28px; border-radius: 22px; }
.wc-type-sage { background: #edf2e4; color: var(--forest); }
.wc-type-dark { background: var(--forest); color: var(--white); }
.wc-type-dark p { color: #d7e2d2; }
.wc-type-lav { background: #eceffd; color: var(--forest); }
.wc-type-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.wc-ico { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 12px; background: #ffffffaa; }
.wc-type-dark .wc-ico { background: #ffffff1f; color: var(--lime); }
.wc-ico .icon { width: 24px; height: 24px; }
.wc-num { font-size: 11px; font-weight: 700; letter-spacing: 0.08em; opacity: 0.75; }
.wc-type h3 { font-size: 26px; }
.wc-check { display: grid; gap: 10px; margin-top: 6px; }
.wc-check li { display: flex; gap: 10px; align-items: flex-start; font-size: 13.5px; font-weight: 600; }
.wc-check .icon { width: 17px; height: 17px; margin-top: 3px; color: var(--forest); }
.wc-type-dark .wc-check .icon { color: var(--lime); }
.wc-type-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: auto; padding-top: 18px; border-top: 1px solid #00000018; }
.wc-type-dark .wc-type-foot { border-top-color: #ffffff2e; }
.wc-type-foot a:first-child { font-size: 13px; font-weight: 750; }
.wc-go { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; background: var(--white); color: var(--forest); transition: transform 0.2s ease; }
.wc-go:hover { transform: translate(2px, -2px); }
.wc-go .icon { width: 18px; height: 18px; }
.wc-type-dark .wc-go { background: var(--lime); color: var(--deep); }
.wc-rows { display: grid; gap: 16px; margin-top: 30px; }
.wc-row { display: grid; grid-template-columns: 1fr 1.4fr auto; gap: 28px; align-items: center; background: #f2f4ec; border-radius: 18px; padding: 26px 30px; transition: background 0.2s ease; }
.wc-row:hover { background: #e9efe0; }
.wc-row-left { display: flex; align-items: center; gap: 18px; }
.wc-row-left h3 { font-size: 21px; }
.wc-row-ico { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; flex-shrink: 0; border-radius: 50%; background: var(--white); color: var(--forest); }
.wc-row-ico .icon { width: 26px; height: 26px; }
.wc-row-mid p { font-size: 14px; }
.wc-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.wc-tags li { font-size: 12px; font-weight: 650; background: var(--white); border: 1px solid var(--line); border-radius: 999px; padding: 5px 14px; }
.wc-row-go { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; color: var(--forest); }
.wc-row-go:hover { transform: translate(2px, -2px); }
.wc-row-go .icon { width: 30px; height: 30px; }
.wc-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 26px; }
.wc-chips li { font-size: 15px; font-weight: 700; background: var(--white); border: 1px solid var(--line); border-radius: 999px; padding: 12px 26px; transition: border-color 0.2s ease, transform 0.2s ease; }
.wc-chips li:hover { border-color: var(--forest); transform: translateY(-2px); }
.wc-tiers { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 28px; }
.wc-tier { display: flex; flex-direction: column; gap: 10px; background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 30px 28px; }
.wc-tier-hot { background: var(--forest); border-color: var(--forest); color: var(--white); }
.wc-tier-hot p, .wc-tier-hot .muted { color: #d7e2d2; }
.wc-tier-num { font-size: 11px; font-weight: 700; letter-spacing: 0.06em; opacity: 0.7; }
.wc-badge { align-self: flex-start; font-size: 11px; font-weight: 800; letter-spacing: 0.06em; background: var(--lime); color: var(--deep); border-radius: 6px; padding: 4px 10px; }
.wc-tier h3 { font-size: 24px; }
.wc-price { font-size: 34px; font-weight: 800; letter-spacing: -0.04em; margin-top: 8px; }
.wc-price small { font-size: 13px; font-weight: 600; letter-spacing: 0; }
.wc-price-sm { font-size: 26px; }
.wc-from { font-size: 12px; opacity: 0.75; }
.wc-tier .button { margin-top: 12px; }
.wc-feats { display: grid; gap: 9px; margin-top: 16px; padding-top: 18px; border-top: 1px solid #00000014; }
.wc-tier-hot .wc-feats { border-top-color: #ffffff2e; }
.wc-feats li { display: flex; gap: 9px; align-items: flex-start; font-size: 13px; font-weight: 600; }
.wc-feats .icon { width: 16px; height: 16px; margin-top: 3px; color: var(--forest); flex-shrink: 0; }
.wc-tier-hot .wc-feats .icon { color: var(--lime); }
.wc-note { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 20px; border: 1.5px dashed #b9c6b5; border-radius: 16px; padding: 20px 26px; }
.wc-note p { display: flex; align-items: center; gap: 12px; font-size: 13.5px; font-weight: 600; }
.wc-note .icon { width: 22px; height: 22px; color: var(--forest); }
.wc-plans { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 28px; }
.wc-plan { background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 28px 26px; display: flex; flex-direction: column; gap: 10px; }
.wc-plan h3 { font-size: 21px; }
.wc-help { background: var(--forest); color: var(--white); border-radius: 24px; padding: 52px 48px; display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.wc-help .eyebrow { color: var(--lime); }
.wc-help h2 { color: var(--white); max-width: 640px; }
.wc-help p { color: #d7e2d2; max-width: 720px; }
.wc-help-points { display: grid; gap: 10px; margin: 6px 0 12px; }
.wc-help-points li { display: flex; gap: 10px; align-items: flex-start; font-weight: 600; font-size: 14.5px; }
.wc-help-points .icon { width: 18px; height: 18px; margin-top: 3px; color: var(--lime); }
.wc-why { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 30px; }
.wc-why-card { background: #f2f4ec; border-radius: 18px; padding: 32px 28px 0; display: flex; flex-direction: column; gap: 12px; overflow: hidden; }
.wc-why-top { display: flex; align-items: center; justify-content: space-between; }
.wc-why-num { font-size: 14px; font-weight: 700; color: var(--muted); }
.wc-why-card h3 { font-size: 22px; }
.wc-why-card p { font-size: 14px; }
.wc-more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding: 18px 0; border-top: 1px solid #00000014; font-size: 13.5px; font-weight: 750; color: var(--forest); }
.wc-more:hover { text-decoration: underline; text-underline-offset: 4px; }
.wc-more .icon { width: 16px; height: 16px; }

/* === Consulting page: steps strip / honesty table / fit panels / manifest === */
.co-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; margin-top: 8px; }
.co-steps li { border-top: 1px solid #b9c6b5; padding-top: 22px; display: flex; flex-direction: column; gap: 10px; }
.co-steps-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.co-step-top { display: flex; align-items: center; justify-content: space-between; color: #9aa88f; }
.co-step-n { font-size: 30px; font-weight: 800; letter-spacing: -0.04em; }
.co-step-top .icon { width: 18px; height: 18px; }
.co-steps h3 { font-size: 20px; }
.co-steps p { font-size: 13.5px; }
.co-table-sub { max-width: 640px; margin: 0 0 24px; }
.co-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 18px; background: var(--white); }
.co-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.co-table th { text-align: left; font-size: 12px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; padding: 18px 24px; border-bottom: 1px solid var(--line); }
.co-table th:first-child { color: var(--forest); }
.co-table th:last-child { color: var(--muted); }
.co-table td { padding: 16px 24px; border-bottom: 1px solid #0000000d; vertical-align: top; font-weight: 600; }
.co-table tr:last-child td { border-bottom: 0; }
.co-table td:last-child { color: var(--muted); font-weight: 500; }
.co-yes, .co-no { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; margin-right: 10px; vertical-align: -6px; }
.co-yes { background: #e4f3d5; color: var(--forest); }
.co-no { background: #f1efe9; color: var(--muted); }
.co-yes .icon, .co-no .icon { width: 14px; height: 14px; }
.co-fit { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 8px; }
.co-fit-yes, .co-fit-no { border-radius: 20px; padding: 32px 30px; }
.co-fit-yes { background: #edf2e4; }
.co-fit-no { background: #f2f4ec; }
.co-fit h3 { font-size: 20px; margin-bottom: 16px; }
.co-fit ul { display: grid; gap: 12px; }
.co-fit li { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; font-weight: 600; }
.co-fit-yes li .icon { width: 17px; height: 17px; margin-top: 3px; color: var(--forest); }
.co-fit-no li .icon { width: 17px; height: 17px; margin-top: 3px; color: var(--muted); }
.co-fit-no li { color: var(--muted); }
.co-manifest { position: relative; overflow: hidden; background: linear-gradient(135deg, #123528 0%, var(--forest) 45%, var(--deep) 100%); color: var(--white); border-radius: 28px; border-top: 3px solid var(--lime); padding: 72px 64px 60px; display: flex; flex-direction: column; gap: 26px; align-items: flex-start; }
.co-manifest::before { content: "\201E"; position: absolute; top: 8px; right: 44px; font-size: 190px; line-height: 1; color: var(--lime); opacity: 0.14; pointer-events: none; font-family: Georgia, serif; }
.co-manifest::after { content: ""; position: absolute; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(200, 241, 107, 0.14), transparent 65%); bottom: -200px; left: -140px; pointer-events: none; }
.co-manifest .eyebrow { color: var(--lime); position: relative; z-index: 1; }
.co-manifest-text { position: relative; z-index: 1; font-size: clamp(21px, 2.5vw, 29px); line-height: 1.55; font-weight: 500; letter-spacing: -0.015em; color: #f2f6ec; max-width: 820px; }
.co-manifest .button { position: relative; z-index: 1; margin-top: 8px; }

@media (max-width: 960px) {
  .co-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .co-fit { grid-template-columns: 1fr; }
  .co-manifest { padding: 48px 26px 40px; }
  .co-manifest::before { font-size: 120px; right: 18px; top: 0; }
}
@media (max-width: 720px) {
  .co-steps { grid-template-columns: 1fr; }
  .co-table th, .co-table td { padding: 12px 16px; font-size: 13px; }
}

/* === Audit page: stats band === */
.au-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; background: var(--forest); border-radius: 22px; padding: 44px 52px; }
.au-stats b { display: block; font-size: clamp(38px, 4.5vw, 58px); font-weight: 800; letter-spacing: -0.05em; color: var(--lime); line-height: 1; }
.au-stats span { display: block; margin-top: 10px; font-size: 13.5px; color: #d7e2d2; max-width: 260px; }

@media (max-width: 720px) {
  .au-stats { grid-template-columns: 1fr; padding: 34px 28px; }
}

/* === Google-ads page: 3D hero scene + tilt tiers === */
.g3d-hero { position: relative; overflow: hidden; background: radial-gradient(900px 480px at 50% -12%, rgba(200, 241, 107, 0.16), transparent 62%), radial-gradient(700px 420px at 88% 115%, rgba(200, 241, 107, 0.07), transparent 60%), linear-gradient(180deg, #1c4a34 0%, var(--deep) 78%); }
.g3d-hero .page-hero-center { background: transparent; position: relative; z-index: 1; }
.g3d-scene { position: absolute; inset: 0; z-index: 0; perspective: 1100px; pointer-events: none; transition: transform 0.35s ease-out; transform: rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)); }
.g3d-layer { position: absolute; transform-style: preserve-3d; }
.g3d-ring { width: 420px; height: 420px; right: -110px; top: -90px; border: 2px solid rgba(200, 241, 107, 0.35); border-radius: 50%; transform: rotateX(64deg) translateZ(60px); animation: g3d-spin 26s linear infinite; }
.g3d-ring::after { content: ''; position: absolute; inset: 46px; border: 1px dashed rgba(255, 255, 255, 0.22); border-radius: 50%; }
.g3d-chip { left: 6%; bottom: 12%; padding: 16px 24px; border-radius: 16px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.22); backdrop-filter: blur(8px); color: var(--lime); font-weight: 800; font-size: 20px; letter-spacing: -0.02em; transform: translateZ(120px); animation: g3d-float 7s ease-in-out infinite; }
.g3d-coin { right: 12%; bottom: 16%; width: 84px; height: 84px; border-radius: 50%; background: radial-gradient(circle at 32% 28%, #e6ffa8, var(--lime) 55%, #9dc84f); color: var(--deep); font-weight: 800; font-size: 38px; display: flex; align-items: center; justify-content: center; box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35); transform: translateZ(180px); animation: g3d-float 5.5s ease-in-out infinite reverse; }
@keyframes g3d-float { 0%, 100% { margin-top: 0; } 50% { margin-top: -22px; } }
@keyframes g3d-spin { to { transform: rotateX(64deg) translateZ(60px) rotateZ(360deg); } }
.g3d-tilt { perspective: 1400px; }
.g3d-tilt .wc-tier { transform-style: preserve-3d; will-change: transform; }
/* Tilt 3D global: cardurile se inclina dupa mouse pe toate paginile */
.wc-tiers, .wc-types, .wc-why { perspective: 1400px; }
.wc-tiers .wc-tier, .wc-types .wc-type, .wc-why-card { transform-style: preserve-3d; will-change: transform; }
@media (prefers-reduced-motion: reduce) {
  .g3d-ring, .g3d-chip, .g3d-coin { animation: none; }
  .g3d-scene { transition: none; }
}
@media (max-width: 960px) {
  .g3d-ring { width: 260px; height: 260px; right: -80px; }
  .g3d-chip { left: 4%; bottom: 8%; font-size: 16px; }
  .g3d-coin { display: none; }
}
/* === Mentenanta page: SLA table / 5-step onboard / proof mock / sticky CTA === */
.mn-sla th:first-child, .mn-sla td:first-child { text-align: left; }
.mn-sla th:not(:first-child), .mn-sla td:not(:first-child) { text-align: center; }
.mn-sla tbody th[scope="row"] { font-weight: 700; color: var(--forest); }
.co-steps-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.mn-proof { background: #f2f4ec; border-radius: 24px; padding: 48px 44px; }
.mn-report { background: var(--white); border: 1px solid var(--line); border-radius: 18px; padding: 26px 28px; margin-top: 24px; max-width: 760px; }
.mn-report-top { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
.mn-dots { display: inline-flex; gap: 6px; }
.mn-dots i { width: 10px; height: 10px; border-radius: 50%; background: #cfd6c4; }
.mn-report-top b { font-size: 12px; letter-spacing: 0.08em; }
.mn-report-top em { margin-left: auto; font-style: normal; font-size: 13px; font-weight: 800; color: var(--forest); background: #e4f3d5; border-radius: 999px; padding: 5px 14px; }
.mn-bars { display: flex; align-items: flex-end; gap: 5px; height: 120px; padding: 10px 4px; border-top: 1px solid #0000000d; border-bottom: 1px solid #0000000d; }
.mn-bars i { flex: 1; min-width: 0; background: linear-gradient(180deg, var(--lime), #7ba05b); border-radius: 3px 3px 0 0; }
.mn-report-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.mn-report-stats b { display: block; font-size: 30px; font-weight: 800; letter-spacing: -0.04em; color: var(--forest); }
.mn-report-stats span { font-size: 12.5px; color: var(--muted); }
.mn-tag { display: inline-block; margin-top: 16px; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; color: var(--muted); }
.mn-sticky { display: none; }
@media (max-width: 960px) {
  .co-steps-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mn-sticky { display: flex; align-items: center; justify-content: space-between; gap: 12px; position: fixed; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); z-index: 60; background: var(--forest); color: var(--white); border-radius: 16px; padding: 12px 12px 12px 18px; box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28); font-size: 13px; }
  .mn-sticky b { color: var(--lime); }
}
@media (max-width: 720px) {
  .co-steps-5 { grid-template-columns: 1fr; }
  .mn-proof { padding: 32px 22px; }
  .mn-report-stats { grid-template-columns: 1fr; }
}

/* === Loss calculator: fields + painful total === */
.loss-field { margin-bottom: 36px; }
.loss-field:last-child { margin-bottom: 0; }
.loss-total strong { color: var(--destructive); }
.loss-total small b { color: var(--ink); }

/* === Service context: banner pe contact + quiz === */
.service-banner { display: flex; align-items: center; gap: 12px; background: #edf2e4; border: 1px solid #b9c6b5; border-radius: 14px; padding: 14px 18px; font-size: 14px; margin-bottom: 20px; }
.service-banner b { color: var(--forest); }
.service-banner .icon { width: 20px; height: 20px; color: var(--forest); flex-shrink: 0; }
.quiz-main { max-width: 760px; margin-inline: auto; }
.quiz-progress { height: 8px; border-radius: 999px; background: #e4e9dc; overflow: hidden; margin-bottom: 12px; }
.quiz-progress span { display: block; height: 100%; width: 0; border-radius: 999px; background: linear-gradient(90deg, var(--forest), var(--lime)); transition: width 0.35s ease; }
.quiz-panel { border: 0; padding: 0; margin: 0 0 8px; }
.quiz-panel legend { font-size: clamp(22px, 2.6vw, 30px); font-weight: 800; letter-spacing: -0.03em; padding: 0; margin-bottom: 20px; }
.quiz-result { margin-top: 8px; }
.quiz-plan { background: var(--forest); color: var(--white); border-radius: 22px; padding: 38px 34px; }
.quiz-plan .wc-tier-num { color: var(--lime); }
.quiz-plan h3 { font-size: clamp(26px, 3vw, 36px); color: var(--white); margin: 6px 0; }
.quiz-plan .muted, .quiz-plan p { color: #d7e2d2; }
.quiz-plan .wc-price { color: var(--white); }
.quiz-plan .wc-price small { color: #d7e2d2; }
.quiz-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.quiz-plan .button-outline { border-color: #ffffff55; color: var(--white); }

/* === Speed test: form + ring + checks === */
.speed-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; max-width: 760px; }
.speed-input { flex: 1 1 280px; min-height: 54px; border: 1px solid var(--line); border-radius: 12px; padding: 12px 18px; font: inherit; background: var(--white); }
#speed-hint { flex-basis: 100%; }
.speed-error { flex-basis: 100%; color: var(--destructive); font-weight: 700; }
.speed-result { display: grid; grid-template-columns: 240px 1fr; gap: 36px; align-items: start; margin-top: 36px; background: var(--white); border: 1px solid var(--line); border-radius: 22px; padding: 36px 32px; }
.speed-ring-wrap { position: relative; width: 220px; height: 220px; }
.speed-ring { width: 100%; height: 100%; transform: rotate(-90deg); }
.speed-ring .portal-ring-fg { transition: stroke-dashoffset 1s ease; }
.speed-score { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.speed-score b { font-size: 56px; font-weight: 800; letter-spacing: -0.05em; color: var(--forest); line-height: 1; }
.speed-score span { font-size: 14px; font-weight: 700; color: var(--muted); }
.speed-checks { display: grid; gap: 8px; margin: 16px 0 22px; }
.speed-checks li { font-size: 13.5px; font-weight: 600; border-radius: 10px; padding: 8px 14px; background: #f2f4ec; }
.speed-checks li.is-ok { border-left: 4px solid var(--forest); }
.speed-checks li.is-bad { border-left: 4px solid var(--destructive); }
.speed-recs { display: grid; gap: 8px; margin: 12px 0 22px 20px; font-size: 14px; }
@media (max-width: 720px) {
  .speed-result { grid-template-columns: 1fr; }
  .speed-ring-wrap { margin-inline: auto; }
}

/* === Client portal: progress ring, quest card, steps timeline === */
.portal-hero { background: var(--forest); color: var(--white); text-align: center; padding: 72px 0 60px; position: relative; overflow: hidden; }
.portal-hero::before, .portal-hero::after { content: ''; position: absolute; border-radius: 50%; filter: blur(70px); opacity: 0.5; pointer-events: none; }
.portal-hero::before { width: 340px; height: 340px; background: #3f7d5c; top: -120px; left: -80px; }
.portal-hero::after { width: 300px; height: 300px; background: var(--lime); opacity: 0.22; bottom: -140px; right: -60px; }
.portal-hero .eyebrow { color: var(--lime); justify-content: center; }
.portal-hero h1 { color: var(--white); position: relative; z-index: 1; }
.portal-hero .hero-lead { color: #d7e2d2; position: relative; z-index: 1; }
.portal-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 20px; align-items: stretch; }
.card-flat { background: var(--white); border: 1px solid var(--line); border-radius: 22px; padding: 34px 30px; }
.portal-progress { display: flex; gap: 24px; align-items: center; }
.portal-ring { width: 130px; height: 130px; flex-shrink: 0; transform: rotate(-90deg); }
.portal-ring-bg { fill: none; stroke: #e4e9dc; stroke-width: 11; }
.portal-ring-fg { fill: none; stroke: var(--lime); stroke-width: 11; stroke-linecap: round; }
.portal-pct { font-size: 40px; font-weight: 800; letter-spacing: -0.04em; color: var(--forest); line-height: 1; }
.portal-level { margin-top: 6px; font-size: 15px; }
.portal-quest { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; border-color: var(--forest); }
.portal-quest h2 { font-size: clamp(24px, 2.6vw, 32px); }
.portal-steps { display: grid; gap: 14px; margin-top: 26px; }
.portal-step { display: flex; gap: 18px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; padding: 22px 24px; }
.portal-step-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.portal-step h3 { font-size: 18px; }
.portal-step p { font-size: 13.5px; margin-top: 6px; }
.portal-date { font-size: 12px; font-weight: 700; color: var(--muted); white-space: nowrap; }
.portal-dot { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex-shrink: 0; border-radius: 50%; }
.portal-dot .icon { width: 21px; height: 21px; }
.portal-done { background: #f2f5ec; }
.portal-done .portal-dot { background: var(--forest); color: var(--white); }
.portal-done h3 { color: var(--forest); }
.portal-active { border-color: var(--forest); box-shadow: 0 0 0 3px #c8f16b55; }
.portal-active .portal-dot { background: var(--lime); color: var(--deep); }
.portal-active .portal-dot i { width: 12px; height: 12px; border-radius: 50%; background: currentColor; animation: portal-pulse 1.6s ease-in-out infinite; }
@keyframes portal-pulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.5); opacity: 0.55; } }
.portal-locked { opacity: 0.75; }
.portal-locked .portal-dot { background: #eef0e8; color: var(--muted); }
.portal-badge { display: inline-block; margin-top: 10px; font-size: 11px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; border-radius: 999px; padding: 4px 12px; }
.portal-done .portal-badge { background: #e4f3d5; color: var(--forest); }
.portal-active .portal-badge { background: var(--lime); color: var(--deep); }
.portal-locked .portal-badge { background: #eef0e8; color: var(--muted); }

@media (max-width: 960px) {
  .portal-grid { grid-template-columns: 1fr; }
  .portal-progress { flex-direction: column; text-align: center; }
}

@media (max-width: 960px) {
  .wc-types, .wc-tiers, .wc-plans, .wc-why { grid-template-columns: 1fr; }
  .wc-row { grid-template-columns: 1fr auto; }
  .wc-row-mid { grid-column: 1 / -1; order: 3; }
  .wc-head { flex-direction: column; align-items: flex-start; }
  .wc-note { flex-direction: column; align-items: flex-start; }
  .wc-help { padding: 38px 28px; }
}

/* === Why trio (2026-09): carduri cu numar, iconita hover, link subsol === */
.why-sec .section-heading { justify-content: center; text-align: center; }
.why-sec .section-heading > div { margin: 0 auto; }
.why-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 28px; text-align: left; }
.why-card { display: flex; flex-direction: column; background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 28px 26px 0; overflow: hidden; transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease; }
.why-card:hover { transform: translateY(-4px); box-shadow: var(--shadow); border-color: var(--forest); }
.why-top { display: flex; align-items: flex-start; justify-content: space-between; margin-bottom: 22px; }
.why-ico { width: 56px; height: 56px; border-radius: 50%; background: var(--white); border: 1px solid var(--line); color: var(--forest); display: inline-flex; align-items: center; justify-content: center; transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease; }
.why-ico .icon { width: 25px; height: 25px; }
.why-card:hover .why-ico { background: var(--lime); border-color: var(--lime); color: var(--deep); transform: rotate(-8deg) scale(1.05); }
.why-num { font-size: 13px; font-weight: 600; color: #9aaa8c; letter-spacing: 0.04em; }
.why-card h3 { font-size: 19px; letter-spacing: -0.02em; margin: 0 0 12px; }
.why-card > p { font-size: 12.5px; line-height: 1.75; color: var(--muted); margin: 0 0 24px; flex: 1; }
.why-link { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; color: var(--ink); border-top: 1px solid var(--line); margin: 0 -26px; padding: 16px 26px; transition: color 0.2s, gap 0.2s; }
.why-link:hover { color: var(--forest); gap: 10px; }
.why-link span { font-size: 16px; line-height: 1; }

[data-theme="dark"] .why-card { background: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .why-card h3 { color: #fff; }
[data-theme="dark"] .why-card > p { color: #b9c6bb; }
[data-theme="dark"] .why-ico { background: rgba(255, 255, 255, 0.06); }
[data-theme="dark"] .why-card:hover .why-ico { background: var(--lime); color: var(--deep); }
[data-theme="dark"] .why-link { color: #e8f0eb; border-top-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .why-num { color: rgba(200, 241, 107, 0.55); }

@media (max-width: 720px) {
  .why-grid { grid-template-columns: 1fr; }
}

/* === Service rows (2026-09): randuri late cu iconita care se coloreaza la hover === */
.svc-rows { display: grid; gap: 16px; margin-top: 28px; }
.svc-row { display: grid; grid-template-columns: 300px minmax(0, 1fr) auto; gap: 28px; align-items: center; background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 30px 32px; text-decoration: none; transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease; }
.svc-row:hover { transform: translateY(-4px); box-shadow: var(--shadow); border-color: var(--forest); }
.svc-left { display: flex; align-items: center; gap: 16px; }
.svc-ico { width: 58px; height: 58px; border-radius: 50%; background: var(--white); border: 1px solid var(--line); color: var(--forest); display: inline-flex; align-items: center; justify-content: center; flex: none; transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.25s ease; }
.svc-ico .icon { width: 26px; height: 26px; }
.svc-row:hover .svc-ico { background: var(--lime); border-color: var(--lime); color: var(--deep); transform: rotate(-8deg) scale(1.05); }
.svc-left strong { font-size: 19px; letter-spacing: -0.02em; line-height: 1.3; color: var(--ink); }
.svc-mid { display: grid; gap: 12px; font-size: 12.5px; line-height: 1.75; color: var(--muted); }
.svc-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.svc-tags i { font-style: normal; font-size: 10.5px; font-weight: 600; color: var(--muted); border: 1px solid var(--line); background: var(--white); border-radius: 999px; padding: 6px 13px; }
.svc-arrow { width: 30px; height: 30px; color: var(--ink); flex: none; transition: transform 0.25s ease, color 0.25s ease; }
.svc-arrow .icon { width: 100%; height: 100%; }
.svc-row:hover .svc-arrow { transform: translate(5px, -5px); color: var(--forest); }

[data-theme="dark"] .svc-row { background: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .svc-left strong { color: #fff; }
[data-theme="dark"] .svc-mid { color: #b9c6bb; }
[data-theme="dark"] .svc-ico { background: rgba(255, 255, 255, 0.06); }
[data-theme="dark"] .svc-row:hover .svc-ico { background: var(--lime); color: var(--deep); }
[data-theme="dark"] .svc-tags i { background: transparent; color: #b9c6bb; }
[data-theme="dark"] .svc-arrow { color: #dfe7de; }

@media (max-width: 960px) {
  .svc-row { grid-template-columns: 1fr auto; }
  .svc-mid { grid-column: 1 / -1; order: 3; }
}
@media (max-width: 720px) {
  .svc-row { padding: 24px 20px; gap: 16px; }
  .svc-left strong { font-size: 17px; }
}

/* === Logo wordmark: majuscule, ca originalul === */
.brand-wordmark { text-transform: uppercase; }

/* === LB tabs (2026-09): capitole manuale cu tonuri, fara autoplay === */
.lb-tablist { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
.lb-tab { flex: none; display: inline-flex; align-items: center; gap: 8px; font: inherit; font-size: 11px; font-weight: 700; color: var(--forest); background: var(--white); border: 1px solid var(--line); border-radius: 999px; padding: 11px 19px; cursor: pointer; transition: background 0.2s, color 0.2s, border-color 0.2s; }
.lb-tab .icon { width: 15px; height: 15px; flex: none; }
.ps-dots button { position: relative; }
.ps-dots button::after { content: ""; position: absolute; inset: -8px; }
.lb-tab:hover { border-color: var(--forest); }
.lb-tab.is-active { background: var(--forest); border-color: var(--forest); color: #fff; }
.lb-tab:focus-visible { outline: 3px solid #9bb779; outline-offset: 2px; }
.lb-panel { border-radius: 22px; padding: 38px 42px; margin-top: 16px; }
.lb-panel .eyebrow { display: block; margin-bottom: 12px; }
.lb-panel h2 { font-size: clamp(24px, 3vw, 34px); margin: 0; letter-spacing: -0.025em; }
.lb-panel > p { font-size: 13px; line-height: 1.85; margin: 14px 0 0; max-width: 68ch; }
.lb-panel ul { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 10px; }
.lb-panel ul li { display: flex; gap: 10px; align-items: flex-start; font-size: 12.5px; line-height: 1.7; }
.lb-panel ul .icon { width: 16px; height: 16px; flex: none; margin-top: 2px; }
.lb-panel > p:last-child { margin-top: 24px; }
.lb-tone-paper { background: var(--white); border: 1px solid var(--line); }
.lb-tone-paper ul .icon { color: var(--forest); }
.lb-tone-sage { background: var(--sage); border: 1px solid var(--line); }
.lb-tone-sage ul .icon { color: var(--forest); }
.lb-tone-lilac { background: var(--lilac); border: 1px solid var(--line); }
.lb-tone-lilac ul .icon { color: var(--forest); }
.lb-tone-forest { background: var(--forest); border: 1px solid var(--forest); color: #eef3e9; }
.lb-tone-forest h2 { color: #fff; }
.lb-tone-forest .eyebrow { color: var(--lime); }
.lb-tone-forest > p { color: #c4d3c4; }
.lb-tone-forest ul { color: #dbe5db; }
.lb-tone-forest ul .icon { color: var(--lime); }

[data-theme="dark"] .lb-tab { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); color: #e8f0eb; }
[data-theme="dark"] .lb-tab.is-active { background: var(--lime); border-color: var(--lime); color: var(--deep); }
[data-theme="dark"] .lb-tone-paper { background: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .lb-tone-paper h2 { color: #fff; }
[data-theme="dark"] .lb-tone-sage { background: rgba(200, 241, 107, 0.07); }
[data-theme="dark"] .lb-tone-sage h2 { color: #fff; }
[data-theme="dark"] .lb-tone-lilac { background: rgba(200, 190, 240, 0.1); }
[data-theme="dark"] .lb-tone-lilac h2 { color: #fff; }

@media (max-width: 720px) {
  .lb-panel { padding: 26px 22px; border-radius: 18px; }
}

/* === Service template pilot (2026-09): hero split, cuprins, module, dovezi, cost === */
.page-hero-split { position: relative; overflow: hidden; padding: 72px 0 64px; background: linear-gradient(180deg, var(--sage) 0%, var(--paper) 90%); }
.page-hero-split .hero-split-grid { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 48px; align-items: center; position: relative; z-index: 1; }
.page-hero-split h1 { font-size: clamp(34px, 4.4vw, 58px); }
.page-hero-split .hero-cta-row { justify-content: flex-start; }
.page-hero-split .hero-cta-row .button-text { color: var(--forest); }
.hero-note { margin: 16px 0 0; font-size: 11px; color: var(--muted); max-width: 52ch; }
.schema-card { background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 26px; box-shadow: var(--shadow); position: relative; }
.schema-tag { position: absolute; top: -11px; left: 20px; font-size: 8px; font-weight: 800; letter-spacing: 0.1em; background: var(--forest); color: var(--lime); border-radius: 999px; padding: 5px 11px; }
.schema-title { display: block; font-size: 15px; font-weight: 800; letter-spacing: -0.01em; margin-bottom: 14px; }
.schema-card ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.schema-card li { display: flex; align-items: center; gap: 11px; font-size: 12.5px; font-weight: 600; border: 1px solid var(--line); border-radius: 12px; padding: 11px 14px; background: var(--paper); }
.schema-card li .icon { width: 17px; height: 17px; color: var(--forest); flex: none; }
.page-toc { position: sticky; top: 12px; z-index: 30; }
.page-toc a:focus-visible { outline: 3px solid var(--forest); outline-offset: 2px; }
#g-sec-cine, #g-sec-module, #g-sec-proces, #g-sec-dovezi, #g-sec-cost, #g-sec-intrebari { scroll-margin-top: 104px; }
.aud-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 26px; }
.aud-yes, .aud-no { border-radius: 16px; padding: 24px; }
.aud-yes { background: var(--white); border: 1px solid var(--line); }
.aud-no { background: transparent; border: 1px dashed #b3c2a4; }
.aud-yes > strong, .aud-no > strong { display: block; font-size: 13px; margin-bottom: 12px; }
.aud-no > strong { color: var(--muted); }
.aud-yes ul, .aud-no ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; font-size: 12px; line-height: 1.7; }
.aud-yes li { display: flex; gap: 9px; align-items: flex-start; }
.aud-yes .icon { width: 15px; height: 15px; color: var(--forest); flex: none; margin-top: 2px; }
.aud-no li { display: flex; gap: 9px; color: var(--muted); align-items: flex-start; }
.aud-no li i { font-style: normal; color: #9aa78d; flex: none; }
.mod-list { display: grid; gap: 0; margin-top: 8px; border-top: 1px solid var(--line); }
.mod-row { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 22px; padding: 28px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 110px; }
.mod-num { font-size: 40px; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: transparent; -webkit-text-stroke: 1.5px #a9bd93; }
.mod-row h3 { font-size: 20px; letter-spacing: -0.02em; margin: 0 0 10px; }
.mod-row > div > p { font-size: 12.5px; line-height: 1.85; color: var(--muted); margin: 0 0 14px; max-width: 68ch; }
.mod-row ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.mod-row ul li { font-size: 11px; font-weight: 600; color: var(--forest); background: var(--sage); border-radius: 999px; padding: 8px 14px; }
.proof-panel { border: 1px solid var(--line); border-radius: 20px; background: var(--white); padding: 32px 34px; }
.proof-panel h2 { font-size: 26px; margin: 14px 0 0; letter-spacing: -0.02em; }
.proof-panel > p { font-size: 12.5px; color: var(--muted); margin: 12px 0 0; max-width: 64ch; }
.proof-list { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 10px; }
.proof-list li { display: flex; gap: 11px; align-items: flex-start; font-size: 12.5px; }
.proof-list .icon { width: 17px; height: 17px; color: var(--forest); flex: none; margin-top: 2px; }
.cost-panel { border-radius: 20px; background: var(--soft, #f3f1ec); border: 1px solid var(--line); padding: 32px 34px; }
.cost-panel h2 { font-size: 26px; margin: 14px 0 0; letter-spacing: -0.02em; }
.cost-panel > p { font-size: 12.5px; color: var(--muted); margin: 12px 0 0; max-width: 64ch; }
.cost-factors { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 0; }
.cost-factors li { font-size: 12.5px; font-weight: 600; padding: 13px 0; border-bottom: 1px dashed #c3cfb4; display: flex; gap: 10px; align-items: baseline; }
.cost-factors li::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--lime); border: 1px solid var(--forest); flex: none; transform: translateY(-1px); }
.cost-factors li:last-child { border-bottom: none; }
.cost-panel .small { margin-top: 16px; }

[data-theme="dark"] .schema-card { background: rgba(255, 255, 255, 0.05); }
[data-theme="dark"] .schema-card li { background: rgba(255, 255, 255, 0.04); color: #dfe7de; }
[data-theme="dark"] .mod-row h3 { color: #fff; }
[data-theme="dark"] .mod-row > div > p { color: #b9c6bb; }
[data-theme="dark"] .mod-num { -webkit-text-stroke-color: rgba(200, 241, 107, 0.45); }
[data-theme="dark"] .mod-row ul li { background: rgba(200, 241, 107, 0.12); color: #e8f0eb; }
[data-theme="dark"] .aud-yes { background: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .aud-yes > strong { color: #fff; }
[data-theme="dark"] .proof-panel { background: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .proof-panel h2 { color: #fff; }
[data-theme="dark"] .cost-panel { background: rgba(255, 255, 255, 0.03); }
[data-theme="dark"] .cost-panel h2 { color: #fff; }

@media (max-width: 960px) {
  .page-hero-split .hero-split-grid { grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 720px) {
  .page-hero-split { padding: 52px 0 48px; }
  .aud-grid { grid-template-columns: 1fr; }
  .mod-row { grid-template-columns: 1fr; gap: 8px; }
  .mod-num { font-size: 30px; }
  .proof-panel, .cost-panel { padding: 24px 20px; }
}

/* === Deliverables ledger (2026-09): randuri-registru cu numar, icon, insigna === */
.dl-rows { list-style: none; margin: 28px 0 0; padding: 0; display: grid; gap: 12px; }
.dl-row { display: flex; align-items: center; gap: 18px; background: var(--white); border: 1px solid var(--line); border-radius: 18px; padding: 20px 22px; transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; }
.dl-row:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); border-color: #b9c7a8; }
.dl-num { font-size: 30px; font-weight: 800; letter-spacing: -0.03em; color: transparent; -webkit-text-stroke: 1.3px #a9bd93; flex: none; width: 52px; }
.dl-row:hover .dl-num { color: var(--forest); -webkit-text-stroke: 0; }
.dl-ico { width: 44px; height: 44px; border-radius: 13px; background: var(--sage); color: var(--forest); display: inline-flex; align-items: center; justify-content: center; flex: none; }
.dl-ico .icon { width: 21px; height: 21px; }
.dl-row div { flex: 1; min-width: 0; }
.dl-row h3 { font-size: 15px; margin: 0 0 5px; letter-spacing: -0.01em; }
.dl-row p { margin: 0; font-size: 12px; line-height: 1.7; color: var(--muted); }
.dl-pill { flex: none; font-size: 9px; font-weight: 800; letter-spacing: 0.1em; color: var(--forest); background: var(--lime); border-radius: 999px; padding: 8px 14px; }

/* === GBP landing extras (2026-09): hero points, ROI duel, final CTA, 5-stepper === */
.hero-points { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 22px; margin: 26px 0 0; padding: 0; position: relative; z-index: 1; }
.hero-points li { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; font-weight: 600; color: #cfe0d2; }
.hero-points .icon { width: 14px; height: 14px; color: var(--lime); flex: none; }
.roi-points { list-style: none; margin: 26px 0 0; padding: 0; display: grid; gap: 12px; max-width: 760px; }
.roi-points li { display: flex; gap: 12px; align-items: flex-start; font-size: 12.5px; line-height: 1.75; color: var(--muted); }
.roi-points .icon { width: 17px; height: 17px; color: var(--forest); flex: none; margin-top: 2px; }
.roi-points strong { color: var(--ink); }
.roi-vs-title { font-size: 20px; margin: 34px 0 0; letter-spacing: -0.02em; }
.roi-duel { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 16px; }
.roi-side { border-radius: 16px; padding: 24px; }
.roi-side strong { display: block; font-size: 13px; margin-bottom: 12px; }
.roi-side ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; font-size: 11.5px; line-height: 1.7; }
.roi-a { background: var(--forest); color: #e9f1e4; }
.roi-a strong { color: var(--lime); }
.roi-a li { display: flex; gap: 9px; align-items: flex-start; }
.roi-a .icon { width: 14px; height: 14px; color: var(--lime); flex: none; margin-top: 2px; }
.roi-b { background: var(--white); border: 1px solid var(--line); color: var(--muted); }
.roi-b strong { color: var(--ink); }
.final-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; background: var(--lime); border-radius: 22px; padding: 38px 42px; color: var(--deep); }
.final-cta h2 { font-size: clamp(26px, 3vw, 36px); margin: 12px 0 0; letter-spacing: -0.03em; }
.final-cta .eyebrow { color: var(--deep); }
.final-cta p { margin: 12px 0 0; font-size: 12.5px; max-width: 56ch; }
.final-cta .small { opacity: 0.75; }
.chi-steps-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.chi-steps-5:has(> li:nth-child(5):hover) > li:nth-child(-n+4)::after { transform: scaleX(1); }
.chi-steps-5:has(> li:nth-child(5):hover) > li:nth-child(-n+4)::before { background: var(--lime); border-color: var(--lime); }

[data-theme="dark"] .roi-b { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .roi-b strong { color: #fff; }
[data-theme="dark"] .final-cta { background: var(--lime); }

[data-theme="dark"] .dl-row { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .dl-row h3 { color: #fff; }
[data-theme="dark"] .dl-row p { color: #b9c6bb; }
[data-theme="dark"] .dl-num { -webkit-text-stroke-color: rgba(200, 241, 107, 0.45); }
[data-theme="dark"] .dl-row:hover .dl-num { color: var(--lime); }

@media (max-width: 960px) {
  .chi-steps-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
  .chi-steps-5 li::after { display: none; }
}
@media (max-width: 720px) {
  .roi-duel { grid-template-columns: 1fr; }
  .final-cta { flex-direction: column; align-items: flex-start; padding: 28px 24px; }
  .chi-steps-5 { grid-template-columns: 1fr; }
}

/* === GBP profile mock (2026-09): vitrina Maps ca vizual de hero === */
.gbp-mock { position: relative; z-index: 1; max-width: 560px; margin: 42px auto 0; background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 24px 26px; box-shadow: 0 30px 70px rgba(0, 0, 0, 0.3); text-align: left; transition: transform 0.3s ease; }
.gbp-mock:hover { transform: translateY(-4px); }
.gbp-top { display: flex; align-items: center; gap: 14px; }
.gbp-g { width: 46px; height: 46px; border-radius: 50%; background: var(--forest); color: var(--lime); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 22px; flex: none; }
.gbp-top div { flex: 1; min-width: 0; }
.gbp-top strong { display: block; font-size: 15px; }
.gbp-stars { display: block; font-size: 11px; color: var(--muted); margin-top: 3px; }
.gbp-stars i { font-style: normal; color: #b7791f; letter-spacing: 1px; }
.gbp-open { font-size: 10px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: var(--forest); background: var(--sage); border-radius: 999px; padding: 7px 13px; flex: none; }
.gbp-rows { display: grid; gap: 9px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--line); }
.gbp-rows span { display: flex; align-items: center; gap: 10px; font-size: 12px; color: var(--muted); }
.gbp-rows .icon { width: 15px; height: 15px; color: var(--forest); flex: none; }
.gbp-actions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 18px; }
.gbp-actions span { display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 11px; font-weight: 700; color: var(--forest); border: 1px solid var(--line); border-radius: 12px; padding: 12px 8px; }
.gbp-actions .icon { width: 15px; height: 15px; }
.gbp-tag { position: absolute; top: -11px; right: 20px; font-size: 8px; font-weight: 800; letter-spacing: 0.1em; background: var(--lime); color: var(--deep); border-radius: 999px; padding: 5px 11px; }

[data-theme="dark"] .gbp-mock { background: rgba(20, 30, 24, 0.85); border-color: rgba(255, 255, 255, 0.12); backdrop-filter: blur(8px); }
[data-theme="dark"] .gbp-top strong { color: #fff; }
[data-theme="dark"] .gbp-rows span { color: #b9c6bb; }

@media (max-width: 720px) {
  .gbp-mock { padding: 20px 18px; }
  .gbp-actions { grid-template-columns: 1fr 1fr 1fr; }
}

/* === Chisinau trust layers (2026-09): pret, garantie, echipa, audit, sticky === */
.price-strip { display: flex; align-items: center; justify-content: space-between; gap: 24px; border: 1px dashed #9db48a; border-radius: 18px; padding: 26px 30px; background: #f2f6e8; }
.price-strip .eyebrow { display: block; margin-bottom: 8px; }
.price-strip p { margin: 0; font-size: 13px; color: var(--muted); }
.price-strip strong { font-size: 20px; color: var(--ink); letter-spacing: -0.02em; }
.guarantee-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
.guarantee-card { background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: 22px; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.guarantee-card:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.guarantee-card > span { width: 40px; height: 40px; border-radius: 12px; background: var(--sage); color: var(--forest); display: inline-flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.guarantee-card > span .icon { width: 20px; height: 20px; }
.guarantee-card strong { display: block; font-size: 13px; margin-bottom: 8px; }
.guarantee-card p { margin: 0; font-size: 11px; line-height: 1.75; color: var(--muted); }
.team-strip { display: flex; align-items: center; gap: 18px; border: 1px solid var(--line); border-radius: 18px; padding: 22px 26px; background: var(--white); }
.team-ava { width: 52px; height: 52px; border-radius: 50%; background: var(--forest); color: var(--lime); display: inline-flex; align-items: center; justify-content: center; flex: none; }
.team-ava .icon { width: 24px; height: 24px; }
.team-strip div { flex: 1; min-width: 0; }
.team-strip strong { font-size: 14px; }
.team-strip p { margin: 4px 0 0; font-size: 11.5px; color: var(--muted); }
.audit-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; background: var(--sage); border: 1px solid var(--line); border-radius: 22px; padding: 36px 40px; }
.audit-cta h2 { font-size: clamp(26px, 3vw, 36px); margin: 12px 0 0; letter-spacing: -0.03em; }
.audit-cta p { margin: 12px 0 0; font-size: 12.5px; color: var(--muted); max-width: 52ch; }
.chi-time { display: block; font-style: normal; font-size: 10px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: var(--forest); margin: 2px 0 5px; }
.chi-sticky { display: none; }

[data-theme="dark"] .price-strip { background: rgba(200, 241, 107, 0.06); }
[data-theme="dark"] .price-strip strong { color: #fff; }
[data-theme="dark"] .guarantee-card { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .guarantee-card strong { color: #fff; }
[data-theme="dark"] .guarantee-card p { color: #b9c6bb; }
[data-theme="dark"] .team-strip { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .team-strip strong { color: #fff; }
[data-theme="dark"] .team-strip p { color: #b9c6bb; }
[data-theme="dark"] .audit-cta { background: rgba(200, 241, 107, 0.08); }
[data-theme="dark"] .audit-cta h2 { color: #fff; }
[data-theme="dark"] .audit-cta p { color: #b9c6bb; }

@media (max-width: 960px) {
  .guarantee-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .price-strip { flex-direction: column; align-items: flex-start; }
  .guarantee-grid { grid-template-columns: 1fr; }
  .audit-cta { flex-direction: column; align-items: flex-start; padding: 28px 24px; }
  .team-strip { flex-wrap: wrap; }
  .chi-sticky { display: flex; align-items: center; justify-content: space-between; gap: 12px; position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 900; background: var(--forest); color: #fff; border-radius: 16px; padding: 12px 12px 12px 20px; font-size: 12px; font-weight: 700; box-shadow: 0 18px 44px rgba(0, 0, 0, 0.3); }
}

/* === Chisinau arena (2026-09): sectoare, duel dark, stepper orizontal === */
.sector-zone { max-width: 860px; }
.sector-chips { list-style: none; display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; padding: 0; }
.sector-chips li { display: inline-flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 700; color: var(--forest); background: var(--sage); border: 1px solid var(--line); border-radius: 999px; padding: 11px 18px; cursor: default; transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease; }
.sector-chips li:hover { background: var(--forest); color: var(--lime); border-color: var(--forest); transform: translateY(-2px); box-shadow: var(--shadow-sm); }
.sector-chips .icon { width: 15px; height: 15px; color: inherit; }
.sector-zone .small { margin-top: 16px; }
.arena-panel { background: var(--deep); border-radius: 26px; padding: 48px 52px; color: #eef3e9; position: relative; overflow: hidden; border: 1px solid transparent; transition: border-color 0.45s ease; }
.arena-panel:hover { border-color: rgba(200, 241, 107, 0.35); }
.arena-panel::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(560px circle at var(--mx, 50%) var(--my, 30%), rgba(200, 241, 107, 0.14), transparent 65%); opacity: 0; transition: opacity 0.45s ease; }
.arena-panel:hover::before { opacity: 1; }
.arena-panel::after { content: ""; position: absolute; left: -90px; bottom: -110px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(200, 241, 107, 0.12), transparent 65%); pointer-events: none; }
.arena-panel .eyebrow { color: var(--lime); }
.arena-panel h2 { font-size: clamp(28px, 3.4vw, 42px); color: #fff; margin: 16px 0 0; letter-spacing: -0.03em; }
.arena-panel > p { color: #b9d1af; font-size: 12.5px; margin: 14px 0 0; max-width: 62ch; }
.arena-grid { margin-top: 30px; border-top: 1px solid rgba(255, 255, 255, 0.12); }
.arena-row { display: grid; grid-template-columns: 150px 1fr 1fr; gap: 18px; align-items: start; padding: 17px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
.arena-row:last-child { border-bottom: none; }
.arena-head { padding: 14px 0; }
.arena-head .arena-you, .arena-head .arena-them { font-size: 10px; font-weight: 800; letter-spacing: 0.12em; }
.arena-you { color: var(--lime); }
.arena-them { color: #8fa583; }
.arena-label { font-size: 11px; font-weight: 700; color: #dce7da; padding-top: 2px; }
.arena-cell { font-size: 11.5px; line-height: 1.7; display: flex; gap: 9px; align-items: flex-start; }
.arena-cell.you { color: #eef5e6; }
.arena-cell.them { color: #93a58f; }
.arena-cell .icon { width: 15px; height: 15px; color: var(--lime); flex: none; margin-top: 2px; }
.arena-cell.them i { font-style: normal; color: #7d8f79; flex: none; }
.chi-steps { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; border-top: 2px solid var(--line); }
.chi-steps li { padding: 22px 20px 0 0; position: relative; }
.chi-steps li::before { content: ""; position: absolute; top: -7px; left: 0; width: 12px; height: 12px; border-radius: 50%; background: var(--paper); border: 3px solid var(--forest); }
.chi-steps li:last-child::after { content: "→"; position: absolute; top: -14px; right: 6px; color: var(--forest); font-weight: 800; }
.chi-dot { display: block; font-size: 13px; font-weight: 800; letter-spacing: 0.1em; color: var(--forest); margin-bottom: 10px; }
.chi-steps span { font-size: 11px; line-height: 1.7; color: var(--muted); }
.chi-steps strong { display: block; font-size: 13px; color: var(--ink); margin-bottom: 5px; }
/* Progress fill: hovering a step greens the line up to it */
.chi-steps > li::after { content: ""; position: absolute; top: -2px; left: 0; right: 0; height: 2px; background: var(--lime); transform: scaleX(0); transform-origin: left center; transition: transform 0.4s ease; }
.chi-steps > li:last-child::after { content: "→"; position: absolute; top: -14px; right: 6px; left: auto; height: auto; background: none; transform: none; color: var(--forest); font-weight: 800; }
.chi-steps:has(> li:nth-child(2):hover) > li:nth-child(1)::after,
.chi-steps:has(> li:nth-child(3):hover) > li:nth-child(-n+2)::after,
.chi-steps:has(> li:nth-child(4):hover) > li:nth-child(-n+3)::after { transform: scaleX(1); }
.chi-steps > li:nth-child(1):hover::before,
.chi-steps:has(> li:nth-child(2):hover) > li:nth-child(-n+2)::before,
.chi-steps:has(> li:nth-child(3):hover) > li:nth-child(-n+3)::before,
.chi-steps:has(> li:nth-child(4):hover) > li::before { background: var(--lime); border-color: var(--lime); }

[data-theme="dark"] .sector-chips li { background: rgba(200, 241, 107, 0.1); border-color: rgba(200, 241, 107, 0.25); color: #e8f0eb; }
[data-theme="dark"] .sector-chips li:hover { background: var(--lime); border-color: var(--lime); color: var(--deep); box-shadow: 0 10px 28px rgba(200, 241, 107, 0.25); }
[data-theme="dark"] .chi-steps { border-top-color: rgba(255, 255, 255, 0.15); }
[data-theme="dark"] .chi-steps strong { color: #fff; }
[data-theme="dark"] .chi-steps span { color: #b9c6bb; }

@media (max-width: 720px) {
  .arena-panel { padding: 30px 22px; border-radius: 20px; }
  .arena-row { grid-template-columns: 1fr; gap: 8px; }
  .arena-head { display: none; }
  .arena-them::before { content: "Concurența: "; font-weight: 800; }
  .chi-steps { grid-template-columns: 1fr; border-top: none; border-left: 2px solid var(--line); padding-left: 22px; gap: 26px; }
  .chi-steps li { padding: 0; }
  .chi-steps li::before { left: -29px; top: 2px; }
  .chi-steps li::after { display: none; }
  .chi-steps li:last-child::after { display: none; }
}

/* === Balti city-dossier (2026-09): fact file, intent chips, sticky rail chapters === */
.dossier { max-width: 860px; }
.fact-file { margin: 22px 0 0; }
.fact-row { display: flex; align-items: baseline; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.fact-row:first-child { border-top: 1px solid var(--line); }
.fact-row dt { font-size: 10px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); white-space: nowrap; }
.fact-dots { flex: 1; border-bottom: 2px dotted #b9c7a8; transform: translateY(-4px); min-width: 24px; }
.fact-row dd { margin: 0; font-size: 13px; font-weight: 600; color: var(--ink); text-align: right; max-width: 60%; }
.intent-zone { max-width: 860px; }
.intent-chips { list-style: none; display: flex; flex-wrap: wrap; gap: 10px; margin: 22px 0 0; padding: 0; }
.intent-chips li { display: inline-flex; align-items: center; gap: 9px; font-size: 12px; font-weight: 600; color: var(--forest); background: var(--white); border: 1px solid var(--line); border-radius: 999px; padding: 11px 18px; transition: border-color 0.18s, transform 0.18s; }
.intent-chips li:hover { border-color: var(--forest); transform: translateY(-2px); }
.intent-chips .icon { width: 15px; height: 15px; color: var(--forest); }
.intent-zone .small { margin-top: 16px; }
.dossier-wrap { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 48px; align-items: start; }
.dossier-rail { position: sticky; top: 110px; }
.dossier-rail span { display: block; writing-mode: vertical-rl; transform: rotate(180deg); font-size: 11px; font-weight: 800; letter-spacing: 0.3em; color: #93a184; border-left: 2px solid var(--lime); padding-left: 0; padding-right: 14px; }
.dossier-chapters { display: grid; gap: 36px; }
.dossier-ch { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 22px; align-items: start; scroll-margin-top: 110px; }
.dossier-num { font-size: 52px; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: transparent; -webkit-text-stroke: 1.5px #a9bd93; }
.dossier-ch h2 { font-size: 24px; letter-spacing: -0.02em; margin: 0 0 12px; }
.dossier-ch p { font-size: 12.5px; line-height: 1.85; color: var(--muted); margin: 0; max-width: 62ch; }
.dossier-links { margin: 14px 0 0; font-size: 11px; font-weight: 700; }
.dossier-links a { color: var(--forest); text-decoration: none; }
.dossier-links a:hover { text-decoration: underline; text-underline-offset: 4px; }
.dossier-links span { color: #a9b5a1; margin: 0 6px; }
.balti-steps { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; }
.balti-steps li { display: flex; gap: 14px; align-items: flex-start; background: var(--white); border: 1px solid var(--line); border-radius: 16px; padding: 20px 22px; }
.balti-steps b { font-size: 12px; font-weight: 800; color: var(--lime); background: var(--forest); border-radius: 8px; padding: 6px 9px; flex: none; }
.balti-steps span { font-size: 11px; line-height: 1.7; color: var(--muted); }
.balti-steps strong { display: block; font-size: 12.5px; color: var(--ink); margin-bottom: 3px; }
.phd-compass-card { position: absolute; right: 6%; top: 16%; width: 60%; background: var(--forest); border-radius: 18px; color: #f2f6ec; padding: 22px; box-shadow: 0 30px 60px rgba(23, 58, 44, 0.3); transform: rotate(3deg); animation: phdFloatB 12s ease-in-out infinite; text-align: center; }
.phd-compass-rose { width: 52px; height: 52px; margin: 0 auto; border-radius: 50%; background: var(--lime); color: var(--deep); display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 20px; }
.phd-map-coords { font-size: 10px; letter-spacing: 0.14em; color: #b9d1af; margin-top: 8px; }

[data-theme="dark"] .fact-row dd { color: #fff; }
[data-theme="dark"] .intent-chips li { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.12); color: #e8f0eb; }
[data-theme="dark"] .dossier-ch h2 { color: #fff; }
[data-theme="dark"] .dossier-ch p { color: #b9c6bb; }
[data-theme="dark"] .dossier-links a { color: var(--lime); }
[data-theme="dark"] .dossier-rail span { color: rgba(200, 241, 107, 0.6); }
[data-theme="dark"] .balti-steps li { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .balti-steps strong { color: #fff; }
[data-theme="dark"] .balti-steps span { color: #b9c6bb; }

@media (max-width: 720px) {
  .dossier-wrap { grid-template-columns: 1fr; gap: 24px; }
  .dossier-rail { position: static; }
  .dossier-rail span { writing-mode: horizontal-tb; transform: none; border-left: none; border-bottom: 2px solid var(--lime); padding: 0 0 10px; }
  .dossier-ch { grid-template-columns: 1fr; gap: 8px; }
  .dossier-num { font-size: 36px; }
  .fact-row dd { max-width: 55%; }
  .balti-steps { grid-template-columns: 1fr; }
}

/* === Collab split cards (2026-09): clauze TU/NOI, doua tonuri === */
.collab-note { display: flex; gap: 14px; align-items: flex-start; border: 1px dashed #9db48a; background: #f2f6e8; border-radius: 14px; padding: 18px 20px; font-size: 11px; line-height: 1.8; color: #4c6440; }
.collab-note .icon { width: 20px; height: 20px; flex: none; margin-top: 2px; color: var(--forest); }
.collab-note p { margin: 0; }
.collab-grid { display: grid; gap: 20px; margin-top: 26px; }
.collab-card { border: 1px solid var(--line); border-radius: 22px; background: var(--white); padding: 32px 34px; overflow: hidden; scroll-margin-top: 110px; }
.collab-head { display: flex; align-items: center; gap: 16px; }
.collab-num { font-size: 40px; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: transparent; -webkit-text-stroke: 1.5px #a9bd93; }
.collab-ico { width: 46px; height: 46px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; background: var(--sage); color: var(--forest); flex: none; }
.collab-ico .icon { width: 22px; height: 22px; }
.collab-head .eyebrow { display: block; margin-bottom: 6px; }
.collab-head h2 { font-size: 24px; letter-spacing: -0.02em; margin: 0; }
.collab-lead { font-size: 12.5px; line-height: 1.85; color: var(--muted); margin: 18px 0 0; max-width: 70ch; }
.collab-split { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 22px; }
.collab-side { border-radius: 16px; padding: 22px; }
.collab-who { display: block; font-size: 10px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; margin-bottom: 14px; }
.collab-tu { background: var(--paper); border: 1px solid var(--line); }
.collab-tu .collab-who { color: var(--muted); }
.collab-noi { background: var(--forest); border: 1px solid var(--forest); }
.collab-noi .collab-who { color: var(--lime); }
.collab-side ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.collab-tu li { font-size: 11.5px; line-height: 1.7; color: var(--ink); padding-left: 20px; position: relative; }
.collab-tu li::before { content: ""; position: absolute; left: 2px; top: 8px; width: 7px; height: 7px; border-radius: 50%; border: 1.5px solid var(--forest); }
.collab-noi li { display: flex; gap: 10px; align-items: flex-start; font-size: 11.5px; line-height: 1.7; color: #e6efe2; }
.collab-noi .icon { width: 15px; height: 15px; color: var(--lime); flex: none; margin-top: 2px; }

[data-theme="dark"] .collab-note { background: rgba(200, 241, 107, 0.07); border-color: rgba(200, 241, 107, 0.3); color: #cfdcc9; }
[data-theme="dark"] .collab-card { background: rgba(255, 255, 255, 0.03); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .collab-head h2 { color: #fff; }
[data-theme="dark"] .collab-lead { color: #b9c6bb; }
[data-theme="dark"] .collab-tu { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .collab-tu li { color: #dfe7de; }
[data-theme="dark"] .collab-num { -webkit-text-stroke-color: rgba(200, 241, 107, 0.45); }

@media (max-width: 720px) {
  .collab-card { padding: 24px 20px; }
  .collab-split { grid-template-columns: 1fr; }
  .collab-num { font-size: 30px; }
}

/* === Legal document (2026-09): estetica act — numere rail, cuprins, avertisment === */
.doc-sheet { max-width: 920px; }
.doc-meta { display: flex; flex-wrap: wrap; gap: 10px 22px; font-size: 10px; color: var(--muted); margin-bottom: 18px; }
.doc-meta span { display: inline-flex; align-items: center; gap: 8px; }
.doc-meta .icon { width: 15px; height: 15px; color: var(--forest); }
.doc-warning { display: flex; gap: 14px; align-items: flex-start; border: 1px dashed #9db48a; background: #f2f6e8; border-radius: 14px; padding: 18px 20px; font-size: 11px; line-height: 1.8; color: #4c6440; margin-bottom: 26px; }
.doc-warning .icon { width: 20px; height: 20px; flex: none; margin-top: 2px; color: var(--forest); }
.doc-toc { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 14px 0; margin-bottom: 8px; }
.doc-toc > span { font-size: 9px; font-weight: 800; letter-spacing: 0.14em; color: var(--muted); }
.doc-toc div { display: flex; flex-wrap: wrap; gap: 8px; }
.doc-toc a { font-size: 10px; font-weight: 650; color: var(--forest); border: 1px solid var(--line); border-radius: 999px; padding: 7px 13px; background: var(--white); transition: border-color 0.18s, background 0.18s; }
.doc-toc a:hover { border-color: var(--forest); background: var(--sage); }
.doc-articles { list-style: none; margin: 0; padding: 0; }
.doc-articles > li { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 22px; padding: 30px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 110px; }
.doc-articles > li:last-child { border-bottom: none; }
.doc-num { font-size: 44px; font-weight: 800; letter-spacing: -0.04em; line-height: 1; color: transparent; -webkit-text-stroke: 1.5px #a9bd93; }
.doc-articles h2 { font-size: 21px; line-height: 1.3; letter-spacing: -0.02em; margin: 0 0 12px; }
.doc-articles p { font-size: 12.5px; line-height: 1.9; color: var(--muted); margin: 0; max-width: 68ch; }
.doc-list { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 10px; }
.doc-list li { font-size: 12px; line-height: 1.75; color: var(--muted); padding-left: 22px; position: relative; }
.doc-list li::before { content: ""; position: absolute; left: 2px; top: 9px; width: 7px; height: 7px; border-radius: 50%; background: var(--lime); border: 1px solid var(--forest); }
.doc-operator { margin-top: 30px; border: 1px dashed #b3c2a4; border-radius: 16px; padding: 28px; background: rgba(255, 255, 255, 0.5); }
.doc-operator h2 { font-size: 22px; margin: 12px 0 10px; }
.doc-operator p { font-size: 12px; line-height: 1.8; color: var(--muted); margin: 0 0 16px; max-width: 64ch; }
.doc-operator ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.doc-operator li { font-size: 11.5px; font-family: ui-monospace, "JetBrains Mono", Menlo, monospace; color: var(--forest); background: var(--sage); border-radius: 8px; padding: 10px 14px; }

[data-theme="dark"] .doc-warning { background: rgba(200, 241, 107, 0.07); border-color: rgba(200, 241, 107, 0.3); color: #cfdcc9; }
[data-theme="dark"] .doc-toc a { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.12); color: #e8f0eb; }
[data-theme="dark"] .doc-num { -webkit-text-stroke-color: rgba(200, 241, 107, 0.45); }
[data-theme="dark"] .doc-articles p, [data-theme="dark"] .doc-list li, [data-theme="dark"] .doc-operator p { color: #b9c6bb; }
[data-theme="dark"] .doc-articles h2 { color: #fff; }
[data-theme="dark"] .doc-operator { background: rgba(255, 255, 255, 0.03); }
[data-theme="dark"] .doc-operator li { background: rgba(255, 255, 255, 0.06); color: var(--lime); }

@media (max-width: 720px) {
  .doc-articles > li { grid-template-columns: 1fr; gap: 10px; padding: 24px 0; }
  .doc-num { font-size: 32px; }
  .doc-operator { padding: 22px 18px; }
}

/* === Local art fallback (2026-09): schematic dots + city chips, replaces lost SVG map === */
.local-dots { height: 150px; border-radius: 14px; background-image: radial-gradient(#b6c5b5 1.2px, transparent 1.6px); background-size: 18px 18px; mask-image: radial-gradient(220px 120px at 50% 50%, #000 30%, transparent 75%); -webkit-mask-image: radial-gradient(220px 120px at 50% 50%, #000 30%, transparent 75%); }
.local-cities { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.local-cities span { font-size: 10px; color: var(--muted); border: 1px solid var(--line); border-radius: 999px; padding: 7px 13px; background: rgba(255, 255, 255, 0.5); }
.local-cities span b { color: var(--forest); margin-right: 6px; }

/* === PS journey grid (2026-09): 4 etape compacte 2x2, carduri tintate === */
.ps-journey-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ps-journey-grid .service-card h3 { text-wrap: balance; }
@media (max-width: 720px) {
  .ps-journey-grid { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .page-hero-center { padding: 68px 0 60px; }
  .hero-orbs i:nth-child(1) { width: 260px; height: 260px; }
  .hero-orbs i:nth-child(2) { width: 220px; height: 220px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-orbs i { animation: none; }
  .u-draw { animation: none; background-size: 100% 0.32em; }
  .page-hero-center:hover::after { opacity: 0; }
  .arena-panel:hover::before { opacity: 0; }
  .chi-steps > li::after { transition: none; }
}

/* === STORY hub flagship (2026-09): mirrored decor, centered problem, lime versus === */
.phd-doc-left { right: auto; left: 4%; transform: rotate(3deg); animation-name: phdFloatB; }
.phd-coins { position: absolute; right: 10%; bottom: 12%; width: 74px; height: 74px; }
.phd-coins i { position: absolute; border-radius: 50%; background: var(--lime); box-shadow: 0 14px 28px rgba(124, 143, 85, 0.35); }
.phd-coins i:nth-child(1) { width: 46px; height: 46px; left: 0; bottom: 0; }
.phd-coins i:nth-child(2) { width: 32px; height: 32px; right: 0; bottom: 22px; opacity: 0.85; }
.phd-coins i:nth-child(3) { width: 22px; height: 22px; left: 16px; top: 0; opacity: 0.7; }

.story-metrics-hub .metrics-row { border-top: 4px solid var(--lime); }
.story-metrics-hub .metric:nth-child(n+2) { border-left: 1px solid rgba(255, 255, 255, 0.14); padding-left: 22px; }

.story-problem-hub .problem-panel { text-align: center; }
.story-problem-hub .problem-panel h2, .story-problem-hub .problem-panel > p { margin-left: auto; margin-right: auto; }
.story-problem-hub .problem-points li { text-align: left; }

.versus-hub .versus-table thead th { background: var(--lime); color: var(--deep); }
.versus-hub .versus-table thead th.versus-us { background: var(--forest); color: var(--lime); }

[data-theme="dark"] .story-metrics-hub .metrics-row { background: rgba(200, 241, 107, 0.06); border: 1px solid rgba(200, 241, 107, 0.25); border-top: 4px solid var(--lime); }
[data-theme="dark"] .story-metrics-hub .metric b { color: var(--lime); }
[data-theme="dark"] .story-metrics-hub .metric:nth-child(n+2) { border-left-color: rgba(255, 255, 255, 0.12); }
[data-theme="dark"] .story-problem-hub .problem-panel { background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .story-problem-hub .problem-panel h2 { color: #fff; }
[data-theme="dark"] .versus-hub .versus-table thead th { background: var(--lime); color: var(--deep); }
[data-theme="dark"] .versus-hub .versus-table thead th.versus-us { background: rgba(200, 241, 107, 0.16); color: var(--lime); }

/* === Journey per-theme (2026-09): 5 parcursuri distincte pe acelasi markup === */
/* REMOTE · pulse line: linie luminoasa, puncte aprinse, carduri cu muchie lime */
.journey-remote .path-flow:before { width: 3px; left: 25px; background: linear-gradient(180deg, transparent 0, var(--lime) 18%, var(--forest) 85%, transparent 100%); }
.journey-remote .path-dot i { border-color: var(--forest); box-shadow: 0 0 0 5px rgba(200, 241, 107, 0.35); }
.journey-remote .path-dot i:after { background: var(--forest); }
.journey-remote .path-card { border-left: 3px solid var(--lime); }
.journey-remote .path-ghost { color: #e2eab4; }

/* FISCAL · dossier: formal, patratos, fara cifre-fantoma */
.journey-fiscal .path-ghost { display: none; }
.journey-fiscal .path-flow:before { background: #c3cfb4; }
.journey-fiscal .path-dot i { border-radius: 5px; border-color: var(--forest); }
.journey-fiscal .path-dot i:after { border-radius: 2px; background: var(--forest); }
.journey-fiscal .path-card { border-radius: 10px; box-shadow: var(--shadow-sm); }
.journey-fiscal .path-ico { border-radius: 8px; }
.journey-fiscal .path-kicker { color: var(--forest); }

/* OPEN · ascent: carduri in scara ascendenta, cifre contur lime */
.journey-open .path-step:nth-child(2) .path-card { margin-left: 36px; }
.journey-open .path-step:nth-child(3) .path-card { margin-left: 72px; }
.journey-open .path-step:nth-child(4) .path-card { margin-left: 108px; }
.journey-open .path-ghost { color: transparent; -webkit-text-stroke: 1.5px #c2d6a8; font-size: 110px; }

/* SRL · ledger: randuri minimaliste, fara carduri */
.journey-srl .path-flow:before { display: none; }
.journey-srl .path-step { grid-template-columns: 64px minmax(0, 1fr); }
.journey-srl .path-card { background: transparent; border: none; border-bottom: 1px solid var(--line); border-radius: 0; padding: 20px 4px; max-width: none; }
.journey-srl .path-card:before { display: none; }
.journey-srl .path-step:last-child .path-card { border-bottom: none; }
.journey-srl .path-step:hover .path-card { transform: none; box-shadow: none; border-color: var(--forest); }
.journey-srl .path-ghost { display: none; }
.journey-srl .path-dot i { width: 12px; height: 12px; border-radius: 3px; }
.journey-srl .path-card-head { margin-bottom: 8px; }
.journey-srl .path-ico { background: transparent; border: 1px solid var(--line); }

/* HUB · dark stage: tot capitolul pe scena inchisa, carduri sticla */
.journey-hub > section { background: var(--deep); border-radius: 26px; }
.journey-hub .section-heading h2 { color: #fff; }
.journey-hub .section-heading p { color: #b9d1af; }
.journey-hub .section-heading .eyebrow { color: var(--lime); }
.journey-hub .path-nav { background: rgba(255, 255, 255, 0.06); border-color: rgba(255, 255, 255, 0.12); }
.journey-hub .path-nav a { background: transparent; border-color: rgba(255, 255, 255, 0.14); color: #d9e4d8; }
.journey-hub .path-nav a b { color: var(--lime); }
.journey-hub .path-flow:before { background: linear-gradient(180deg, transparent 0, rgba(200, 241, 107, 0.55) 20%, rgba(200, 241, 107, 0.15) 85%, transparent 100%); }
.journey-hub .path-dot i { border-color: var(--lime); background: var(--deep); box-shadow: 0 0 0 5px rgba(200, 241, 107, 0.18); }
.journey-hub .path-dot i:after { background: var(--lime); }
.journey-hub .path-card { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.12); }
.journey-hub .path-card h2 { color: #fff; }
.journey-hub .path-card p { color: #c4d3c4; }
.journey-hub .path-kicker { color: var(--lime); }
.journey-hub .path-ico { background: var(--lime); color: var(--deep); }
.journey-hub .path-ghost { color: rgba(255, 255, 255, 0.08); }
.journey-hub .path-step:hover .path-card { border-color: rgba(200, 241, 107, 0.45); }

@media (max-width: 720px) {
  .journey-open .path-step:nth-child(n) .path-card { margin-left: 0; }
  .journey-open .path-ghost { font-size: 72px; }
  .journey-hub > section { border-radius: 0; }
}

/* === Boxes v2 (2026-09): bento display + check-uri insigna, in limbajul reference === */
.story-bento .bento-card { border-radius: 22px; }
.story-bento .bento-card h2 { font-size: 25px; letter-spacing: -0.025em; }
.story-bento .bento-card:hover { transform: translateY(-4px); }
.story-bento .bento-links-inline a { font-weight: 700; color: var(--forest); text-decoration: none; }
.story-bento .bento-links-inline a:hover { text-decoration: underline; text-underline-offset: 4px; }
.problem-points .icon { width: 18px; height: 18px; }

[data-theme="dark"] .versus-table { background: rgba(255, 255, 255, 0.03); border-color: rgba(255, 255, 255, 0.12); box-shadow: none; }
[data-theme="dark"] .versus-table th, [data-theme="dark"] .versus-table td { border-bottom-color: rgba(255, 255, 255, 0.08); }
[data-theme="dark"] .versus-table tbody th { color: #fff; }
[data-theme="dark"] .versus-table td { color: #b9c6bb; }
[data-theme="dark"] .versus-table tbody tr:hover td { background: rgba(255, 255, 255, 0.04); }
[data-theme="dark"] .versus-table td.versus-us { background: rgba(200, 241, 107, 0.1); color: #e4f2c8; }
[data-theme="dark"] .versus-table tbody tr:hover td.versus-us { background: rgba(200, 241, 107, 0.14); }

@media (max-width: 720px) {
  .story-metrics-hub .metric:nth-child(n+2) { border-left: none; padding-left: 0; }
}

[data-theme="dark"] .story-metrics-fiscal .metrics-row, [data-theme="dark"] .story-metrics-srl .metrics-row { background: rgba(255, 255, 255, 0.04); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .story-metrics-fiscal .metric b, [data-theme="dark"] .story-metrics-srl .metric b { color: var(--lime); }
[data-theme="dark"] .versus-table { background: rgba(255, 255, 255, 0.03); border-color: rgba(255, 255, 255, 0.1); }
[data-theme="dark"] .versus-table tbody th { color: #fff; }
[data-theme="dark"] .versus-table td.versus-us { background: rgba(200, 241, 107, 0.08); }

@media (max-width: 720px) {
  .story-metrics { margin-top: -48px; }
  .story-metrics .metrics-row { grid-template-columns: 1fr; padding: 26px 24px; gap: 20px; }
  .problem-panel { padding: 30px 24px; }
  .problem-points { grid-template-columns: 1fr; }
  .u-draw { white-space: normal; }
}
