/* Rivan dark theme clone - Stormy Teal */
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0b0c0e;
  --bg-soft: #101719;
  --surface: rgba(26, 34, 36, 0.96);
  --surface-strong: #202b2e;
  --surface-soft: #131c1f;
  --surface-muted: #172528;
  --surface-neutral: #172126;
  --surface-teal: rgba(79, 183, 179, 0.13);
  --surface-feature: #141d20;
  --surface-feature-cool: #102225;
  --surface-example: #111b1f;
  --surface-advanced: #081113;
  --surface-advanced-soft: #11282b;
  --surface-filter: #0f191c;
  --surface-filter-soft: #1d3034;
  --surface-advanced-chip: rgba(226, 251, 250, 0.1);
  --text: #e2fbfa;
  --text-soft: #d7e8e8;
  --text-faint: #bdd2d2;
  --text-muted: #bdd2d2;
  --brand: #4fb7b3;
  --brand-dark: #78d9d5;
  --brand-strong: #78d9d5;
  --brand-deep: #c7fffb;
  --brand-900: #c7fffb;
  --accent: #4fb7b3;
  --accent-cool: #63c9c5;
  --accent-soft: rgba(79, 183, 179, 0.14);
  --accent-border: rgba(79, 183, 179, 0.36);
  --accent-text: #a9f1ed;
  --accent-strong: #5fd6d1;
  --border: #26373b;
  --border-strong: #3d555a;
  --line: #26373b;
  --line-strong: #3d555a;
  --line-feature: rgba(79, 183, 179, 0.38);
  --success: #68dfa7;
  --warn: #f8c86a;
  --danger: #ff8585;
  --ruby: #ff8d9c;
  --magenta: #9ac7ff;
  --shadow-lg: 0 34px 72px -42px rgba(0, 0, 0, 0.74);
  --shadow-md: 0 22px 48px -34px rgba(0, 0, 0, 0.66);
}

:root[data-theme="dark"],
:root[data-theme="dark"] body {
  background: #0b0c0e !important;
  color: var(--text) !important;
}

:root[data-theme="dark"] body {
  background:
    radial-gradient(circle at 14% 0%, rgba(79, 183, 179, 0.13), transparent 28%),
    radial-gradient(circle at 88% 8%, rgba(126, 217, 213, 0.09), transparent 30%),
    linear-gradient(180deg, #0b0c0e 0%, #101719 46%, #0b0c0e 100%) !important;
}

:root[data-theme="dark"] header {
  background: rgba(11, 12, 14, 0.88) !important;
  border-bottom-color: rgba(79, 183, 179, 0.18) !important;
  box-shadow: 0 18px 34px -28px rgba(0, 0, 0, 0.82) !important;
}

/* Dark original: use the light Rivan icon mark for every visible site logo image. */
:root[data-theme="dark"] .brand-mark,
:root[data-theme="dark"] .brand img[src$="rivan-icon.svg"],
:root[data-theme="dark"] .footer-brand img[src$="rivan-icon.svg"],
:root[data-theme="dark"] img[src$="rivan-icon.svg"] {
  content: url('/assets/rivan-icon-light.svg') !important;
}

:root[data-theme="dark"] h1,
:root[data-theme="dark"] h2,
:root[data-theme="dark"] h3,
:root[data-theme="dark"] h4,
:root[data-theme="dark"] summary,
:root[data-theme="dark"] strong,
:root[data-theme="dark"] .brand strong,
:root[data-theme="dark"] .brand-word strong,
:root[data-theme="dark"] .pricing-price strong,
:root[data-theme="dark"] .footer-brand strong,
:root[data-theme="dark"] .privacy-brief strong,
:root[data-theme="dark"] .section-header h2,
:root[data-theme="dark"] .hero h1,
:root[data-theme="dark"] .cta-copy h2,
:root[data-theme="dark"] .cta-copy strong,
:root[data-theme="dark"] .section-trust .section-head h2 {
  color: var(--text) !important;
}

:root[data-theme="dark"] p,
:root[data-theme="dark"] li,
:root[data-theme="dark"] .muted,
:root[data-theme="dark"] .hero p,
:root[data-theme="dark"] .hero-copy,
:root[data-theme="dark"] .hero-proof-line,
:root[data-theme="dark"] .hero-proof-card span,
:root[data-theme="dark"] .workflow-head p,
:root[data-theme="dark"] .panel-top,
:root[data-theme="dark"] .pricing-head p,
:root[data-theme="dark"] .pricing-helper,
:root[data-theme="dark"] .cta-copy > p,
:root[data-theme="dark"] .cta-note,
:root[data-theme="dark"] .contact-form-header p,
:root[data-theme="dark"] .contact-form-note,
:root[data-theme="dark"] .contact-email-option > p,
:root[data-theme="dark"] .footer-brand span,
:root[data-theme="dark"] .footer-meta,
:root[data-theme="dark"] .footer,
:root[data-theme="dark"] .faq-answer,
:root[data-theme="dark"] .hero-meta,
:root[data-theme="dark"] .lead-card p,
:root[data-theme="dark"] .detail-body p,
:root[data-theme="dark"] .detail-body li,
:root[data-theme="dark"] .nav-links,
:root[data-theme="dark"] .brand span,
:root[data-theme="dark"] .brand-word span {
  color: #d7e8e8 !important;
}

:root[data-theme="dark"] a:hover,
:root[data-theme="dark"] .nav-links a:hover,
:root[data-theme="dark"] .legal-contact-webmail a:hover,
:root[data-theme="dark"] .contact-webmail-links a:hover {
  color: var(--accent-text) !important;
}

:root[data-theme="dark"] .nav-links a,
:root[data-theme="dark"] .legal-summary a,
:root[data-theme="dark"] .contact-chip,
:root[data-theme="dark"] .contact-webmail-links a,
:root[data-theme="dark"] .legal-contact-webmail a,
:root[data-theme="dark"] .filter-chip,
:root[data-theme="dark"] .bridge-link,
:root[data-theme="dark"] .button.secondary,
:root[data-theme="dark"] .legal-contact-copy,
:root[data-theme="dark"] .legal-contact-button,
:root[data-theme="dark"] .pricing-tier-label,
:root[data-theme="dark"] .tag,
:root[data-theme="dark"] .icon-badge,
:root[data-theme="dark"] .faq-expand-label::before,
:root[data-theme="dark"] .eyebrow,
:root[data-theme="dark"] .proof-kicker,
:root[data-theme="dark"] .advanced-chip,
:root[data-theme="dark"] .label,
:root[data-theme="dark"] .badge,
:root[data-theme="dark"] .status-pill,
:root[data-theme="dark"] .chip,
:root[data-theme="dark"] .cta-reassurance span {
  background: rgba(226, 251, 250, 0.055) !important;
  border-color: rgba(79, 183, 179, 0.22) !important;
  color: var(--accent-text) !important;
  box-shadow: none !important;
}

/* Dark original homepage: make only the small numbered workflow boxes use the stronger experiment green. */
:root[data-theme="dark"] .step-num {
  background: linear-gradient(135deg, #78d9d5 0%, #4fb7b3 100%) !important;
  border: 1px solid rgba(126, 217, 213, 0.48) !important;
  color: #031013 !important;
  box-shadow: 0 12px 22px -16px rgba(79, 183, 179, 0.70) !important;
}

:root[data-theme="dark"] .nav-links a:hover,
:root[data-theme="dark"] .legal-summary a:hover,
:root[data-theme="dark"] .contact-chip:hover,
:root[data-theme="dark"] .contact-webmail-links a:hover,
:root[data-theme="dark"] .button.secondary:hover,
:root[data-theme="dark"] .filter-chip:hover,
:root[data-theme="dark"] .bridge-link:hover {
  background: rgba(79, 183, 179, 0.13) !important;
  border-color: rgba(79, 183, 179, 0.42) !important;
}

:root[data-theme="dark"] .nav-cta,
:root[data-theme="dark"] .button.primary,
:root[data-theme="dark"] .contact-form .button.primary,
:root[data-theme="dark"] .pricing-tier.is-core .button.primary,
:root[data-theme="dark"] .legal-contact-button,
:root[data-theme="dark"] .filter-toggle.is-active {
  background: linear-gradient(135deg, #78d9d5 0%, #4fb7b3 100%) !important;
  border-color: rgba(126, 217, 213, 0.48) !important;
  color: #031013 !important;
  box-shadow: 0 22px 42px -28px rgba(79, 183, 179, 0.58) !important;
}

:root[data-theme="dark"] .nav-cta:hover,
:root[data-theme="dark"] .button.primary:hover,
:root[data-theme="dark"] .contact-form .button.primary:hover,
:root[data-theme="dark"] .pricing-tier.is-core .button.primary:hover,
:root[data-theme="dark"] .legal-contact-button:hover {
  background: linear-gradient(135deg, #6ed8d4 0%, #3a6870 100%) !important;
  color: #041012 !important;
}

:root[data-theme="dark"] .hero h1 .gradient {
  background: linear-gradient(135deg, #e2fbfa 0%, #78d9d5 48%, #9ac7ff 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
}

:root[data-theme="dark"] .hero-panel,
:root[data-theme="dark"] .hero-proof,
:root[data-theme="dark"] .hero-proof-card,
:root[data-theme="dark"] .workflow-card,
:root[data-theme="dark"] .workflow-step,
:root[data-theme="dark"] .workflow-step-output,
:root[data-theme="dark"] .card,
:root[data-theme="dark"] .section-card,
:root[data-theme="dark"] .section-soft .container,
:root[data-theme="dark"] .section-tinted .container,
:root[data-theme="dark"] .pricing-decision-card,
:root[data-theme="dark"] .pricing-tier,
:root[data-theme="dark"] .data-handling-block,
:root[data-theme="dark"] .faq-item,
:root[data-theme="dark"] .timeline-band,
:root[data-theme="dark"] .sprint-week-card,
:root[data-theme="dark"] .contact-form-shell,
:root[data-theme="dark"] .contact-email-option,
:root[data-theme="dark"] .privacy-brief,
:root[data-theme="dark"] .legal-contact-box,
:root[data-theme="dark"] .process-diagram-shell,
:root[data-theme="dark"] .process-diagram-node,
:root[data-theme="dark"] .process-step,
:root[data-theme="dark"] .process-note,
:root[data-theme="dark"] .info-card,
:root[data-theme="dark"] .step-card,
:root[data-theme="dark"] .handoff-card,
:root[data-theme="dark"] .feature-card,
:root[data-theme="dark"] .track-card,
:root[data-theme="dark"] .checklist-card,
:root[data-theme="dark"] .offer-card,
:root[data-theme="dark"] .fit-card,
:root[data-theme="dark"] .advanced-card,
:root[data-theme="dark"] .advanced-quiet-shell,
:root[data-theme="dark"] .advanced-quiet-item,
:root[data-theme="dark"] .filter-card,
:root[data-theme="dark"] .filters-band,
:root[data-theme="dark"] .example-card,
:root[data-theme="dark"] .example-box,
:root[data-theme="dark"] .example-start-card,
:root[data-theme="dark"] .trust-eval-card,
:root[data-theme="dark"] .founder-card,
:root[data-theme="dark"] .founder-copy,
:root[data-theme="dark"] .bridge-shell:not(.is-dark),
:root[data-theme="dark"] .panel,
:root[data-theme="dark"] .panel-head,
:root[data-theme="dark"] .lead-card,
:root[data-theme="dark"] .detail-box,
:root[data-theme="dark"] .filters,
:root[data-theme="dark"] .stat-box,
:root[data-theme="dark"] .proof-item,
:root[data-theme="dark"] .deliverable-proof,
:root[data-theme="dark"] .pricing-helper,
:root[data-theme="dark"] .legal-summary a,
:root[data-theme="dark"] .quick-chooser,
:root[data-theme="dark"] .quick-chooser-card,
:root[data-theme="dark"] .timing-card,
:root[data-theme="dark"] .track-primary-shell,
:root[data-theme="dark"] .path-intro-card,
:root[data-theme="dark"] .cta-panel-contact,
:root[data-theme="dark"] .quick-path,
:root[data-theme="dark"] .terms-brief {
  background: linear-gradient(180deg, rgba(26, 34, 36, 0.97), rgba(16, 24, 27, 0.97)) !important;
  border-color: rgba(79, 183, 179, 0.2) !important;
  box-shadow: var(--shadow-md) !important;
  color: var(--text) !important;
}

:root[data-theme="dark"] .hero-panel::before,
:root[data-theme="dark"] .dark-band::before,
:root[data-theme="dark"] .hero-proof::before,
:root[data-theme="dark"] .cta-panel::before {
  opacity: 0.22 !important;
}

:root[data-theme="dark"] .section-soft#om-rivan .container,
:root[data-theme="dark"] .section-soft[aria-label="Vanlige spørsmål"] .container {
  background: transparent !important;
  border-color: rgba(79, 183, 179, 0.16) !important;
  box-shadow: none !important;
}

:root[data-theme="dark"] .section-proof .container.control-shell,
:root[data-theme="dark"] .dark-band,
:root[data-theme="dark"] .cta-panel,
:root[data-theme="dark"] .section-trust .section-card,
:root[data-theme="dark"] .bridge-shell.is-dark,
:root[data-theme="dark"] .sprint-week-card.is-dark,
:root[data-theme="dark"] .hero-proof,
:root[data-theme="dark"] .advanced-card,
:root[data-theme="dark"] .filters-band {
  background: linear-gradient(135deg, #0f191c 0%, #1a2224 54%, #19393d 100%) !important;
  border-color: rgba(79, 183, 179, 0.28) !important;
  box-shadow: var(--shadow-lg) !important;
}

:root[data-theme="dark"] .pricing-tier.is-core,
:root[data-theme="dark"] .feature-card.is-highlight,
:root[data-theme="dark"] .offer-card.is-featured,
:root[data-theme="dark"] .track-card.is-highlight,
:root[data-theme="dark"] .lead-card.active,
:root[data-theme="dark"] .filter-chip.is-active,
:root[data-theme="dark"] .process-step.is-emphasis {
  background: linear-gradient(180deg, #183536, #111b1f) !important;
  border-color: rgba(79, 183, 179, 0.5) !important;
  outline-color: rgba(79, 183, 179, 0.18) !important;
}

:root[data-theme="dark"] .process-step.is-closing {
  background: linear-gradient(180deg, rgba(28, 45, 48, 0.98), rgba(15, 24, 27, 0.98)) !important;
  border-color: rgba(169, 241, 237, 0.28) !important;
}

:root[data-theme="dark"] .process-step::after {
  background: rgba(79, 183, 179, 0.42) !important;
}

:root[data-theme="dark"] .process-step h3,
:root[data-theme="dark"] .process-step p,
:root[data-theme="dark"] .process-step-note {
  color: var(--text) !important;
}

:root[data-theme="dark"] .process-step p {
  color: var(--text) !important;
}

:root[data-theme="dark"] .process-step-num,
:root[data-theme="dark"] .process-step-note,
:root[data-theme="dark"] .example-start-label,
:root[data-theme="dark"] .decision-cue,
:root[data-theme="dark"] .footer-meta-note,
:root[data-theme="dark"] .legal-contact-copy-feedback {
  color: var(--text) !important;
}

:root[data-theme="dark"] .section-open .section-card,
:root[data-theme="dark"] .section-decision .section-card,
:root[data-theme="dark"] .section-structured .section-card,
:root[data-theme="dark"] .section-payoff .section-card,
:root[data-theme="dark"] .section-soft.trust-band .container,
:root[data-theme="dark"] .section-soft.section-fit .container,
:root[data-theme="dark"] .section-soft[aria-label="Når Rivan passer og når det ikke passer"] .container,
:root[data-theme="dark"] .section-tinted#pris .container {
  background: linear-gradient(180deg, rgba(23, 33, 36, 0.98), rgba(12, 18, 20, 0.98)) !important;
  border-color: rgba(79, 183, 179, 0.2) !important;
}

:root[data-theme="dark"] .section-proof .control-step:not(.is-emphasis),
:root[data-theme="dark"] .section-proof .control-support-card {
  background: rgba(226, 251, 250, 0.06) !important;
  border-color: rgba(79, 183, 179, 0.2) !important;
}

:root[data-theme="dark"] .section-proof .control-step.is-emphasis,
:root[data-theme="dark"] .section-proof .control-strip,
:root[data-theme="dark"] .callout,
:root[data-theme="dark"] .summary-strip {
  background: rgba(79, 183, 179, 0.11) !important;
  border-color: rgba(79, 183, 179, 0.24) !important;
}

:root[data-theme="dark"] .cta-links,
:root[data-theme="dark"] .cta-action-card {
  background: linear-gradient(180deg, rgba(17, 31, 33, 0.96), rgba(10, 17, 19, 0.98)) !important;
  border-color: rgba(79, 183, 179, 0.26) !important;
  box-shadow: 0 26px 52px -34px rgba(0, 0, 0, 0.74) !important;
}

:root[data-theme="dark"] .cta-link-row .button.primary,
:root[data-theme="dark"] .cta-actions .button.primary {
  box-shadow: 0 20px 38px -26px rgba(79, 183, 179, 0.58) !important;
}

:root[data-theme="dark"] .cta-support,
:root[data-theme="dark"] .cta-action-card .cta-note,
:root[data-theme="dark"] .cta-utility-label {
  color: #d7e8e8 !important;
}

:root[data-theme="dark"] .data-handling-links a,
:root[data-theme="dark"] .contact-next-block,
:root[data-theme="dark"] .contact-privacy-note,
:root[data-theme="dark"] .rivan-back-top,
:root[data-theme="dark"] .utility-back-top,
:root[data-theme="dark"] .institutional-reassurance span,
:root[data-theme="dark"] .section-kicker span,
:root[data-theme="dark"] .control-support-list div,
:root[data-theme="dark"] .process-diagram-label,
:root[data-theme="dark"] .process-step-num,
:root[data-theme="dark"] .filter-toggle {
  background: rgba(226, 251, 250, 0.06) !important;
  border-color: rgba(79, 183, 179, 0.22) !important;
  color: #d7e8e8 !important;
  box-shadow: none !important;
}

:root[data-theme="dark"] .rivan-back-top:hover,
:root[data-theme="dark"] .utility-back-top:hover,
:root[data-theme="dark"] .filter-toggle:hover {
  background: rgba(79, 183, 179, 0.13) !important;
  border-color: rgba(79, 183, 179, 0.42) !important;
}

:root[data-theme="dark"] .contact-privacy-note a,
:root[data-theme="dark"] .section-kicker span::before,
:root[data-theme="dark"] .rivan-back-top-icon,
:root[data-theme="dark"] .utility-back-top-icon {
  color: var(--accent-text) !important;
}

:root[data-theme="dark"] .panel-code,
:root[data-theme="dark"] .workflow-step-output,
:root[data-theme="dark"] .contact-field input,
:root[data-theme="dark"] .contact-field textarea,
:root[data-theme="dark"] .filters select,
:root[data-theme="dark"] .filters input,
:root[data-theme="dark"] textarea,
:root[data-theme="dark"] select,
:root[data-theme="dark"] input {
  background: rgba(6, 11, 12, 0.78) !important;
  border-color: rgba(79, 183, 179, 0.28) !important;
  color: var(--text) !important;
}

:root[data-theme="dark"] input::placeholder,
:root[data-theme="dark"] textarea::placeholder {
  color: rgba(181, 201, 202, 0.68) !important;
}

:root[data-theme="dark"] .contact-field input:focus,
:root[data-theme="dark"] .contact-field textarea:focus,
:root[data-theme="dark"] .filters select:focus,
:root[data-theme="dark"] .filters input:focus,
:root[data-theme="dark"] textarea:focus,
:root[data-theme="dark"] select:focus,
:root[data-theme="dark"] input:focus {
  border-color: rgba(126, 217, 213, 0.74) !important;
  box-shadow: 0 0 0 4px rgba(79, 183, 179, 0.18) !important;
  outline: none !important;
}

:root[data-theme="dark"] .panel-top {
  flex-wrap: wrap !important;
  gap: 10px !important;
}

:root[data-theme="dark"] .panel-code {
  max-width: 100% !important;
  white-space: normal !important;
  text-wrap: balance;
}

:root[data-theme="dark"] .trust-pill::before,
:root[data-theme="dark"] .pricing-scope-list li::before,
:root[data-theme="dark"] .cta-reassurance span::before,
:root[data-theme="dark"] .timeline-band-point.is-active .timeline-dot,
:root[data-theme="dark"] .fit-list div::before {
  background: var(--accent-strong) !important;
  box-shadow: 0 0 0 4px rgba(79, 183, 179, 0.16) !important;
}

:root[data-theme="dark"] .not-fit-list div::before {
  background: var(--ruby) !important;
}

:root[data-theme="dark"] .status-pill.ok {
  color: #8bf0bd !important;
  border-color: rgba(104, 223, 167, 0.32) !important;
  background: rgba(104, 223, 167, 0.1) !important;
}

:root[data-theme="dark"] .status-pill.warn {
  color: #f8d68a !important;
  border-color: rgba(248, 200, 106, 0.32) !important;
  background: rgba(248, 200, 106, 0.1) !important;
}

:root[data-theme="dark"] .status-pill.danger {
  color: #ffa1a1 !important;
  border-color: rgba(255, 133, 133, 0.32) !important;
  background: rgba(255, 133, 133, 0.1) !important;
}

:root[data-theme="dark"] .dark-band p,
:root[data-theme="dark"] .dark-band span,
:root[data-theme="dark"] .dark-band li,
:root[data-theme="dark"] .dark-band .proof-item span,
:root[data-theme="dark"] .sprint-week-card.is-dark p,
:root[data-theme="dark"] .sprint-week-card.is-dark span,
:root[data-theme="dark"] .section-trust .section-head p,
:root[data-theme="dark"] .callout p,
:root[data-theme="dark"] .callout li,
:root[data-theme="dark"] .hero-proof li,
:root[data-theme="dark"] .hero-proof p,
:root[data-theme="dark"] .advanced-card p,
:root[data-theme="dark"] .filters-band p,
:root[data-theme="dark"] .bridge-shell.is-dark p {
  color: rgba(226, 251, 250, 0.92) !important;
}

:root[data-theme="dark"] .footer,
:root[data-theme="dark"] .footer-shell,
:root[data-theme="dark"] footer {
  border-color: rgba(79, 183, 179, 0.18) !important;
}

:root[data-theme="dark"] .brand img,
:root[data-theme="dark"] .brand-mark,
:root[data-theme="dark"] .footer-brand img {
  filter: drop-shadow(0 10px 22px rgba(79, 183, 179, 0.16));
}

:root[data-theme="dark"] iframe {
  background: #101719 !important;
  border-color: rgba(79, 183, 179, 0.26) !important;
  box-shadow: 0 24px 52px -34px rgba(0, 0, 0, 0.72) !important;
}

:root[data-theme="dark"] ::selection {
  background: rgba(79, 183, 179, 0.36);
  color: #f7ffff;
}

@media (max-width: 760px) {
  :root[data-theme="dark"] .nav-links a {
    color: #d9fbf9 !important;
    background: rgba(226, 251, 250, 0.075) !important;
    border-color: rgba(79, 183, 179, 0.32) !important;
  }
}
