:root {
    --primary: #0EA5E9;
    --primary-hover: #0284C7;
    --secondary: #6366F1;
    --secondary-hover: #4F46E5;
    --accent: #F59E0B;
    --accent-hover: #D97706;
    --bg-main: #0B0F19;
    --bg-surface: #111827;
    --bg-surface-elevated: #1F2937;
    --bg-viewport: #070A10;
    --text-primary: #F9FAFB;
    --text-secondary: #9CA3AF;
    --text-muted: #9CA3AF;
    --border-subtle: #1F2937;
    --border-default: #374151;
    --border-highlight: #0EA5E9;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    background-color: var(--bg-main);
    color: var(--text-primary);
}

body {
    font-family: 'Inter', sans-serif;
    background-color: var(--bg-main);
    color: var(--text-primary);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Space Grotesk', sans-serif;
}

.font-mono-cad {
    font-family: 'JetBrains Mono', monospace;
}

.text-muted {
    color: #9CA3AF !important;
}

.cad-grid-pattern {
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px), linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
    background-size: 24px 24px;
}

.cad-radial-glow {
    background: radial-gradient(circle at 50% 20%, rgba(14, 165, 233, 0.22) 0%, rgba(11, 15, 25, 0) 70%);
}

.glass-panel {
    background: rgba(17, 24, 39, 0.75);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.custom-scrollbar::-webkit-scrollbar-track {
    background: #0B0F19;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
    background: #1F2937;
    border-radius: 9999px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #0EA5E9;
}

/* ===== header ===== */
.site-header-block .header-dropdown-item {
    position: relative;
}

.site-header-block .js-dropdown-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.site-header-block .js-mobile-dropdown-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

/* ===== herosection ===== */
.hero-spatial-section .hero-spatial-section__grid-bg {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

.hero-spatial-section .hero-spatial-section__radial-glow {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.15) 0%, rgba(11, 15, 25, 0) 70%);
}

.hero-spatial-section .hero-spatial-section__btn-primary:hover {
    transform: translateY(-1px);
}

.hero-spatial-section .hero-spatial-section__btn-secondary:hover {
    transform: translateY(-1px);
}

/* ===== whoitfitsandwhoitdoesnt ===== */
.qualification-matrix {
    font-family: 'Inter', sans-serif;
}

.qualification-matrix h2,
.qualification-matrix h3 {
    font-family: 'Space Grotesk', sans-serif;
}

.qualification-matrix .qual-card-fits {
    background: radial-gradient(circle at top left, rgba(16, 185, 129, 0.08) 0%, rgba(17, 24, 39, 0.95) 70%);
}

.qualification-matrix .qual-card-not-fits {
    background: radial-gradient(circle at top left, rgba(245, 158, 11, 0.08) 0%, rgba(17, 24, 39, 0.95) 70%);
}

.qualification-matrix .js-qual-card.is-hidden {
    display: none;
}

/* ===== interactiveproducttour ===== */
.cad-interactive-tour .cad-grid-bg {
    background-size: 24px 24px;
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.04) 1px, transparent 1px), linear-gradient(to bottom, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
}

.cad-interactive-tour .cad-viewport-area {
    background: radial-gradient(circle at 50% 50%, rgba(14, 165, 233, 0.08) 0%, rgba(7, 10, 16, 0.95) 75%);
}

.cad-interactive-tour input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #38bdf8;
    cursor: pointer;
    border: 2px solid #0b0f19;
}

.cad-interactive-tour input[type="range"]::-moz-range-thumb {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #38bdf8;
    cursor: pointer;
    border: 2px solid #0b0f19;
}

/* ===== howitlooksinside ===== */
.inside-look-section {
    position: relative;
}

.inside-look-section .inside-look-section__grid-overlay {
    background-image: linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
    background-size: 32px 32px;
}

.inside-look-section .inside-look-section__frame {
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.inside-look-section .inside-look-section__frame:hover {
    border-color: rgba(14, 165, 233, 0.6);
    box-shadow: 0 0 25px -5px rgba(14, 165, 233, 0.2);
}

/* ===== featuresgrid ===== */
.features-grid-block {
    background-color: #0E131F
}

.features-grid-block .features-grid-card {
    transform: translateY(0);
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease, box-shadow 0.3s ease
}

.features-grid-block .features-grid-card:hover {
    transform: translateY(-4px)
}

/* ===== solutionsgrid ===== */
.solutions-grid-section {
    position: relative;
}

.solutions-grid-section .solution-card {
    box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.7);
}

.solutions-grid-section .solution-card:hover {
    box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.7), 0 0 20px -5px rgba(14, 165, 233, 0.15);
}

/* ===== traininggrid ===== */
.training-grid-section {
    background-color: #0B0F19;
    position: relative;
}

.training-grid-section .js-training-card {
    backdrop-filter: blur(12px);
    will-change: transform;
}

.training-grid-section .js-training-filter.active {
    background-color: #0EA5E9;
    color: #FFFFFF;
    border-color: #0EA5E9;
}

.training-grid-section .js-training-card.hidden {
    display: none;
}

/* ===== bloggrid ===== */
.blog-grid-section .blog-card {
    box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.7);
}

.blog-grid-section .blog-card:hover {
    box-shadow: 0 0 25px -5px rgba(14, 165, 233, 0.2);
    transform: translateY(-2px);
}

/* ===== bookaconsultation ===== */
.consultation-booking .consultation-input::placeholder {
    color: #9CA3AF;
    opacity: 1;
}

.consultation-booking .js-duration-btn.active,
.consultation-booking .js-date-btn.active,
.consultation-booking .js-time-btn.active {
    border-color: #0EA5E9;
    background-color: rgba(14, 165, 233, 0.18);
    color: #FFFFFF;
}

.consultation-booking .js-topic-card.active {
    border-color: #0EA5E9;
    background-color: rgba(14, 165, 233, 0.15);
}

.consultation-booking .js-topic-card.active div:first-child {
    background-color: #0284C7;
    color: #FFFFFF;
}

/* ===== footer ===== */
.tlnker-footer .tlnker-footer-grid-bg {
    background-image: radial-gradient(#1F2937 1px, transparent 1px);
    background-size: 24px 24px;
}

.site-header-block .header-dropdown-item {
    position: relative;
}

.site-header-block .js-dropdown-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.site-header-block .js-mobile-dropdown-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.tlnker-footer .tlnker-footer-grid-bg {
    background-image: radial-gradient(#1F2937 1px, transparent 1px);
    background-size: 24px 24px;
}

.training-hero-section .training-hero-section__grid-pattern {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

.training-catalog-section .training-catalog-section__search-input::placeholder {
    color: #6B7280;
    opacity: 1;
}


/* ===== PAGE: blog ===== */
.blog-page-section input::placeholder {
  color: #6B7280;
  opacity: 1;
}

.blog-page-section input:focus {
  box-shadow: 0 0 0 1px #0EA5E9;
}

.blog-page-section .js-filter-btn.active {
  background-color: #0EA5E9;
  border-color: #0EA5E9;
  color: #FFFFFF;
}

.blog-page-section .hidden {
  display: none !important;
}

/* ===== PAGE: about ===== */
.about-content-section { font-family: 'Inter', sans-serif; } .about-content-section .js-capability-card { will-change: transform, opacity; } .about-content-section .js-capability-btn { cursor: pointer; }

/* ===== PAGE: contact ===== */
.contact-page-section input::placeholder,
.contact-page-section textarea::placeholder {
  color: #6B7280;
  opacity: 1;
}
.contact-page-section select {
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 1em;
}
.contact-page-section .js-topic-tag.is-active {
  background-color: #0EA5E9;
  color: #FFFFFF;
  border-color: #0EA5E9;
}

/* ===== PAGE: privacy ===== */
.privacy-policy-section .privacy-card {
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.privacy-policy-section .privacy-card:hover {
  border-color: #0EA5E9;
  box-shadow: 0 10px 30px -10px rgba(14, 165, 233, 0.15);
}

/* ===== PAGE: terms ===== */
.terms-content-section{scroll-behavior:smooth}.terms-content-section .js-toc-link.active{color:#38bdf8;background-color:#1f2937;font-weight:500}.terms-content-section a{text-decoration-skip-ink:auto}

/* ===== PAGE: disclaimer ===== */
.legal-disclaimer-section a { text-decoration-skip-ink: auto; }
.legal-disclaimer-section aside a.active { color: #38bdf8; border-left-color: #38bdf8; background-color: rgba(31, 41, 55, 0.6); }
.legal-disclaimer-section section:target { border-color: rgba(14, 165, 233, 0.6); outline: 1px solid rgba(14, 165, 233, 0.4); }

.comment-card {
    position: relative;
    background-color: rgba(17, 24, 39, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.comment-card:hover {
    box-shadow: 0 12px 30px -10px rgba(0, 0, 0, 0.8), 0 0 20px -5px rgba(14, 165, 233, 0.2);
}

.user-avatar-initials {
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    object-fit: cover;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    user-select: none;
}

.badge-role {
    letter-spacing: 0.05em;
}

.comment-body p {
    color: #d1d5db;
}

.action-btn:focus-visible {
    outline: 2px solid #0ea5e9;
    outline-offset: 2px;
}

.reply-thread-wrapper {
    isolation: isolate;
}

.reply-comment {
    background-color: rgba(15, 23, 42, 0.7);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.reply-avatar {
    width: 2.25rem;
    height: 2.25rem;
    min-width: 2.25rem;
    object-fit: cover;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.badge-author {
    letter-spacing: 0.05em;
}

.reply-body p {
    color: #cbd5e1;
}

.reply-comment:hover {
    box-shadow: 0 8px 25px -8px rgba(0, 0, 0, 0.7), 0 0 15px -4px rgba(99, 102, 241, 0.2);
}


/* ===== PAGE TEMPLATE: features ===== */
.site-header-block .header-dropdown-item {
    position: relative;
}

.site-header-block .js-dropdown-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.site-header-block .js-mobile-dropdown-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.detail-page-template .detail-hero-spatial__grid-bg {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

.detail-page-template .detail-hero-spatial__radial-glow {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.15) 0%, rgba(11, 15, 25, 0) 70%);
}

.detail-page-template .accordion-item .js-accordion-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.tlnker-footer .tlnker-footer-grid-bg {
    background-image: radial-gradient(#1F2937 1px, transparent 1px);
    background-size: 24px 24px;
}

/* ===== PAGE TEMPLATE: solutions ===== */
.site-header-block .header-dropdown-item {
    position: relative;
}

.site-header-block .js-dropdown-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.site-header-block .js-mobile-dropdown-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.detail-page-template .detail-hero-spatial__grid-bg {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

.detail-page-template .detail-hero-spatial__radial-glow {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.15) 0%, rgba(11, 15, 25, 0) 70%);
}

.detail-page-template .accordion-item .js-accordion-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.tlnker-footer .tlnker-footer-grid-bg {
    background-image: radial-gradient(#1F2937 1px, transparent 1px);
    background-size: 24px 24px;
}

/* ===== PAGE TEMPLATE: training ===== */
.site-header-block .header-dropdown-item {
    position: relative;
}

.site-header-block .js-dropdown-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.site-header-block .js-mobile-dropdown-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.detail-page-template .detail-hero-spatial__grid-bg {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

.detail-page-template .detail-hero-spatial__radial-glow {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.15) 0%, rgba(11, 15, 25, 0) 70%);
}

.detail-page-template .accordion-item .js-accordion-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.tlnker-footer .tlnker-footer-grid-bg {
    background-image: radial-gradient(#1F2937 1px, transparent 1px);
    background-size: 24px 24px;
}

/* ===== PAGE TEMPLATE: blog ===== */
.site-header-block .header-dropdown-item {
    position: relative;
}

.site-header-block .js-dropdown-toggle[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.site-header-block .js-mobile-dropdown-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.detail-page-template .detail-hero-spatial__grid-bg {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
}

.detail-page-template .detail-hero-spatial__radial-glow {
    background: radial-gradient(circle, rgba(14, 165, 233, 0.15) 0%, rgba(11, 15, 25, 0) 70%);
}

.detail-page-template .accordion-item .js-accordion-btn[aria-expanded="true"] .bi-chevron-down {
    transform: rotate(180deg);
}

.tlnker-footer .tlnker-footer-grid-bg {
    background-image: radial-gradient(#1F2937 1px, transparent 1px);
    background-size: 24px 24px;
}