/* Full screen craftsmanship video section */
        .craftsmanship-video-section-full {
          position: relative;
          width: 100%;
          height: 60vh;
          min-height: 480px;
          overflow: hidden;
          margin: 60px 0;
          border-top: 1px solid var(--border-dark);
          border-bottom: 1px solid var(--border-dark);
        }

        .craftsmanship-video-bg-full {
          width: 100%;
          height: 100%;
          object-fit: cover;
          display: block;
        }

        /* Groundripper Profile Section Styling */
        .groundripper-profile-section {
          padding: 100px 0;
          background-color: var(--bg-primary);
          border-bottom: 1px solid var(--border-dark);
          position: relative;
        }

        .ripper-header {
          margin-bottom: 56px;
        }

        .ripper-grid {
          display: grid;
          grid-template-columns: 1.1fr 0.9fr;
          gap: 48px;
          align-items: center;
        }

        .ripper-feed-col {
          display: flex;
          flex-direction: column;
          gap: 24px;
        }

        .ripper-media-wrapper {
          position: relative;
          background-color: #060907;
          border: 1px solid var(--border-dark);
          border-radius: 12px;
          aspect-ratio: 16 / 10;
          display: flex;
          align-items: center;
          justify-content: center;
          overflow: hidden;
          padding: 24px;
          box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.8);
        }

        /* Sci-fi holographic grid background */
        .ripper-hologram-grid {
          position: absolute;
          inset: 0;
          background-image: 
            linear-gradient(to right, rgba(196, 164, 108, 0.03) 1px, transparent 1px),
            linear-gradient(to bottom, rgba(196, 164, 108, 0.03) 1px, transparent 1px);
          background-size: 30px 30px;
          opacity: 0.8;
          pointer-events: none;
        }

        .ripper-render-img {
          max-width: 90%;
          max-height: 90%;
          object-fit: contain;
          z-index: 2;
          filter: drop-shadow(0 15px 30px rgba(0, 0, 0, 0.6));
          transition: transform 0.4s ease;
        }

        .ripper-video-loop {
          width: 100%;
          height: 100%;
          object-fit: cover;
          z-index: 1;
        }

        /* Hotspot Pins */
        .ripper-hotspot {
          position: absolute;
          z-index: 10;
          cursor: pointer;
          display: flex;
          align-items: center;
          gap: 8px;
        }

        .hotspot-engine {
          top: 36%;
          left: 38%;
        }

        .hotspot-chain {
          top: 48%;
          left: 74%;
        }

        .hotspot-tracks {
          top: 72%;
          left: 48%;
        }

        .hotspot-blade {
          top: 65%;
          left: 20%;
        }

        .hotspot-core {
          width: 12px;
          height: 12px;
          border-radius: 50%;
          background-color: var(--brand-gold);
          border: 2px solid var(--text-white);
          box-shadow: 0 0 10px var(--brand-gold);
          transition: transform 0.25s ease, background-color 0.25s ease;
        }

        .hotspot-pulse {
          position: absolute;
          width: 24px;
          height: 24px;
          margin-left: -6px;
          margin-top: -6px;
          border-radius: 50%;
          border: 1px solid var(--brand-gold);
          animation: pulse-gold 2s infinite ease-in-out;
          pointer-events: none;
        }

        .hotspot-label {
          background-color: rgba(6, 9, 7, 0.85);
          border: 1px solid var(--border-gold);
          color: var(--text-white);
          font-family: var(--font-headings);
          font-size: 0.68rem;
          font-weight: 700;
          padding: 3px 8px;
          border-radius: 4px;
          letter-spacing: 0.05em;
          opacity: 0;
          transform: translateX(-10px);
          transition: opacity 0.25s ease, transform 0.25s ease;
          pointer-events: none;
          white-space: nowrap;
        }

        .ripper-hotspot:hover .hotspot-label,
        .ripper-hotspot.active .hotspot-label {
          opacity: 1;
          transform: translateX(0);
        }

        .ripper-hotspot:hover .hotspot-core,
        .ripper-hotspot.active .hotspot-core {
          transform: scale(1.3);
          background-color: var(--text-white);
        }

        @keyframes pulse-gold {
          0% { transform: scale(0.6); opacity: 1; }
          100% { transform: scale(1.8); opacity: 0; }
        }

        .feed-control-bar {
          display: flex;
          justify-content: center;
        }

        /* Right Column: Spec Board Card */
        .spec-board-card {
          border: 1px solid var(--border-dark);
          background-color: var(--bg-secondary);
          border-radius: 12px;
          overflow: hidden;
        }

        .spec-board-header {
          padding: 24px 28px;
          border-bottom: 1px solid var(--border-dark);
          display: flex;
          flex-direction: column;
          gap: 16px;
        }

        .spec-board-badge {
          font-family: var(--font-headings);
          font-size: 0.72rem;
          font-weight: 800;
          color: var(--brand-gold);
          letter-spacing: 0.08em;
        }

        .spec-selectors {
          display: flex;
          gap: 8px;
          flex-wrap: wrap;
        }

        .spec-sel-btn {
          background: transparent;
          border: 1px solid var(--border-dark);
          color: var(--text-gray);
          padding: 6px 14px;
          font-family: var(--font-headings);
          font-size: 0.72rem;
          font-weight: 700;
          border-radius: 4px;
          cursor: pointer;
          transition: var(--transition-fast);
          letter-spacing: 0.05em;
        }

        .spec-sel-btn:hover {
          border-color: var(--brand-gold);
          color: var(--text-white);
        }

        .spec-sel-btn.active {
          background-color: var(--brand-gold);
          color: #060907;
          border-color: var(--brand-gold);
        }

        .spec-board-body {
          padding: 28px;
          min-height: 230px;
        }

        .part-details-animate {
          animation: fade-slide-in 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
        }

        @keyframes fade-slide-in {
          0% { opacity: 0; transform: translateY(12px); }
          100% { opacity: 1; transform: translateY(0); }
        }

        .part-title {
          font-family: var(--font-headings);
          font-size: 1.3rem;
          font-weight: 700;
          color: var(--text-white);
          margin-bottom: 4px;
        }

        .part-subtitle {
          font-family: var(--font-headings);
          font-size: 0.8rem;
          font-weight: 600;
          color: var(--brand-gold);
          margin-bottom: 18px;
          letter-spacing: 0.02em;
        }

        .part-desc {
          font-size: 0.88rem;
          line-height: 1.6;
          color: var(--text-gray);
          margin-bottom: 20px;
        }

        .part-bullet-list {
          padding-left: 18px;
          display: flex;
          flex-direction: column;
          gap: 10px;
        }

        .part-bullet-list li {
          font-size: 0.85rem;
          color: var(--text-gray);
          position: relative;
        }

        .part-bullet-list li::before {
          content: "•";
          color: var(--brand-gold);
          font-weight: bold;
          display: inline-block;
          width: 1em;
          margin-left: -1em;
        }

        .spec-board-stats {
          display: grid;
          grid-template-columns: repeat(4, 1fr);
          background-color: rgba(0, 0, 0, 0.2);
          border-top: 1px solid var(--border-dark);
        }

        .spec-stat-item {
          padding: 20px;
          text-align: center;
          border-right: 1px solid var(--border-dark);
          display: flex;
          flex-direction: column;
          gap: 4px;
        }

        .spec-stat-item:last-child {
          border-right: none;
        }

        .spec-stat-val {
          font-family: var(--font-headings);
          font-size: 1.1rem;
          font-weight: 700;
          color: var(--brand-gold);
        }

        .spec-stat-lbl {
          font-size: 0.68rem;
          color: var(--text-gray);
          text-transform: uppercase;
          letter-spacing: 0.02em;
        }

        /* Responsive Groundripper profile */
        @media (max-width: 960px) {
          .ripper-grid {
            grid-template-columns: 1fr;
            gap: 32px;
          }
          .spec-board-stats {
            grid-template-columns: repeat(2, 1fr);
          }
          .spec-stat-item {
            border-bottom: 1px solid var(--border-dark);
          }
          .spec-stat-item:nth-child(even) {
            border-right: none;
          }
          .spec-stat-item:nth-last-child(-n+2) {
            border-bottom: none;
          }
        }

        /* Environment Section Styling */
        .environment-section {
          padding: 100px 0;
          background-color: var(--bg-secondary);
          border-bottom: 1px solid var(--border-dark);
          position: relative;
        }

        .environment-grid {
          display: grid;
          grid-template-columns: 320px 1fr;
          gap: 40px;
          margin-top: 48px;
          align-items: start;
        }

        .env-selector-list {
          display: flex;
          flex-direction: column;
          gap: 16px;
        }

        .env-node {
          display: flex;
          align-items: center;
          gap: 20px;
          padding: 22px 24px;
          background-color: var(--bg-primary);
          border: 1px solid var(--border-dark);
          border-radius: 10px;
          cursor: pointer;
          transition: var(--transition-normal);
        }

        .env-node:hover {
          border-color: var(--brand-gold);
          transform: translateX(6px);
          box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
        }

        .env-node.active {
          border-color: var(--brand-gold);
          background-color: #f2f0eb;
          box-shadow: 0 8px 30px rgba(140, 111, 56, 0.08);
          transform: translateX(12px);
        }

        .env-node-icon-wrapper {
          width: 44px;
          height: 44px;
          border-radius: 8px;
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-dark);
          display: flex;
          align-items: center;
          justify-content: center;
          color: var(--text-gray);
          transition: var(--transition-fast);
        }

        .env-node.active .env-node-icon-wrapper,
        .env-node:hover .env-node-icon-wrapper {
          background-color: var(--brand-gold);
          color: var(--bg-primary);
          border-color: var(--brand-gold);
        }

        .env-node-info {
          display: flex;
          flex-direction: column;
          text-align: left;
        }

        .env-node-label {
          font-family: var(--font-headings);
          font-size: 0.7rem;
          font-weight: 700;
          color: var(--brand-gold);
          letter-spacing: 0.1em;
          margin-bottom: 4px;
        }

        .env-node-title {
          font-size: 1.05rem;
          font-weight: 700;
          color: var(--text-white);
        }

        .env-details-board {
          padding: 48px;
          background-color: var(--bg-primary);
          border: 1px solid var(--border-dark);
          border-radius: 12px;
          min-height: 480px;
          display: flex;
          flex-direction: column;
          text-align: left;
        }

        .env-header-row {
          border-bottom: 1px solid var(--border-dark);
          padding-bottom: 24px;
          margin-bottom: 28px;
        }

        .env-stage-badge {
          background-color: var(--bg-secondary);
          color: var(--brand-gold);
          border: 1px solid var(--border-gold);
          margin-bottom: 12px;
          display: inline-block;
        }

        .env-stage-title {
          font-size: 2rem;
          font-weight: 700;
          color: var(--text-white);
          margin-bottom: 6px;
        }

        .env-stage-subtitle {
          font-size: 1.1rem;
          font-weight: 500;
          color: var(--brand-gold);
          font-family: var(--font-headings);
        }

        .env-stage-desc {
          font-size: 0.98rem;
          line-height: 1.7;
          color: var(--text-gray);
          margin-bottom: 36px;
          flex-grow: 1;
        }

        .env-technical-split {
          display: grid;
          grid-template-columns: 1.2fr 1fr;
          gap: 36px;
          border-top: 1px solid var(--border-dark);
          padding-top: 32px;
        }

        .env-box-title {
          font-family: var(--font-headings);
          font-size: 0.8rem;
          font-weight: 700;
          color: var(--brand-gold);
          letter-spacing: 0.08em;
          display: block;
          margin-bottom: 18px;
        }

        .env-highlights ul {
          list-style: none;
          display: flex;
          flex-direction: column;
          gap: 12px;
        }

        .env-highlights li {
          font-size: 0.9rem;
          color: var(--text-white);
          display: flex;
          align-items: center;
          gap: 10px;
        }

        .env-bullet-check {
          color: var(--brand-gold);
          font-weight: 700;
        }

        .env-specs-box {
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-gold);
          border-radius: 8px;
          padding: 20px 24px;
          display: flex;
          flex-direction: column;
          gap: 12px;
        }

        .env-spec-row {
          display: flex;
          justify-content: space-between;
          border-bottom: 1px dashed var(--border-dark);
          padding-bottom: 8px;
        }

        .env-spec-row:last-child {
          border-bottom: none;
          padding-bottom: 0;
        }

        .env-spec-label {
          font-size: 0.85rem;
          color: var(--text-gray);
        }

        .env-spec-value {
          font-size: 0.88rem;
          font-weight: 600;
          color: var(--text-white);
        }

        /* Responsive Environment grid */
        @media (max-width: 990px) {
          .environment-grid {
            grid-template-columns: 1fr;
            gap: 32px;
          }
          .env-selector-list {
            flex-direction: row;
            overflow-x: auto;
            padding-bottom: 8px;
          }
          .env-node {
            flex: 1;
            min-width: 250px;
            transform: none !important;
            justify-content: center;
          }
          .env-node.active {
            transform: none !important;
          }
          .env-details-board {
            padding: 30px 24px;
            min-height: auto;
          }
          .env-technical-split {
            grid-template-columns: 1fr;
            gap: 28px;
          }
        }

        @media (max-width: 580px) {
          .env-selector-list {
            flex-direction: column;
          }
          .env-node {
            min-width: unset;
            width: 100%;
          }
        }






        /* 1. Vectr-style Hero Section Styling */
        .hero-section {
          position: relative;
          height: 100vh;
          width: 100%;
          display: flex;
          align-items: center;
          justify-content: center;
          overflow: hidden;
          background-color: #0c120f;
        }

        .hero-video-bg-wrapper {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: 1;
          pointer-events: none;
        }

        .hero-video-bg {
          width: 100%;
          height: 100%;
          object-fit: cover;
        }

        .hero-video-overlay {
          position: absolute;
          inset: 0;
          background: radial-gradient(circle at center, rgba(12, 18, 15, 0.45) 0%, rgba(12, 18, 15, 0.88) 100%);
          z-index: 2;
        }

        .hero-container {
          position: relative;
          z-index: 3;
          display: flex;
          align-items: center;
          justify-content: center;
          width: 100%;
          text-align: center;
        }

        .hero-content {
          z-index: 10;
          display: flex;
          flex-direction: column;
          align-items: center;
          max-width: 900px;
          perspective: 1000px;
        }

        .hero-badge {
          display: inline-flex;
          align-items: center;
          gap: 6px;
          background-color: rgba(140, 111, 56, 0.08);
          border: 1px solid var(--brand-gold);
          color: var(--brand-gold);
          font-family: var(--font-headings);
          font-weight: 700;
          font-size: 0.75rem;
          padding: 6px 14px;
          border-radius: 30px;
          letter-spacing: 0.05em;
          margin-bottom: 24px;
          text-transform: uppercase;
        }

        .hero-title {
          font-size: clamp(2.5rem, 6vw, 4.8rem);
          line-height: 1.1;
          margin-bottom: 24px;
          font-weight: 800;
          text-transform: uppercase;
          color: #ffffff;
          display: flex;
          flex-direction: column;
          gap: 4px;
          letter-spacing: -0.01em;
          transform-style: preserve-3d;
          transition: transform 0.1s ease-out, opacity 0.1s ease-out;
        }

        .hero-title span {
          display: block;
          background: linear-gradient(180deg, #ffffff 40%, #c1d3c7 100%);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
        }

        .hero-subtitle {
          color: #94a3b8;
          font-size: clamp(1rem, 2vw, 1.25rem);
          line-height: 1.6;
          margin-bottom: 40px;
          max-width: 680px;
          display: flex;
          flex-direction: column;
          gap: 6px;
          transform-style: preserve-3d;
          transition: transform 0.1s ease-out, opacity 0.1s ease-out;
        }

        .hero-subtitle span {
          display: block;
        }

        .hero-actions {
          display: flex;
          gap: 16px;
          justify-content: center;
          transition: opacity 0.1s ease-out;
        }

        .hero-scroll-indicator {
          position: absolute;
          bottom: 40px;
          left: 50%;
          transform: translateX(-50%);
          z-index: 3;
          font-family: var(--font-headings);
          font-size: 0.72rem;
          font-weight: 700;
          color: var(--brand-gold);
          letter-spacing: 0.15em;
          text-transform: uppercase;
          opacity: 0.7;
          animation: pulse 2s infinite;
        }

        /* 2. Scrollytelling Flow Section Styling */
        .flow-scroll-wrapper {
          background-color: #0c120f;
          position: relative;
          height: 400vh; /* 4 steps */
          width: 100%;
        }

        .flow-sticky-container {
          position: sticky;
          top: 0;
          height: 100vh;
          display: flex;
          align-items: center;
          justify-content: center;
          overflow: hidden;
          width: 100%;
          border-bottom: 1px solid rgba(196, 164, 108, 0.08);
        }

        .flow-content-grid {
          display: grid;
          grid-template-columns: 1.1fr 0.9fr;
          gap: 64px;
          height: 80vh;
          align-items: center;
          width: 100%;
        }

        .flow-left-panel {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
        }

        .flow-heading {
          font-size: clamp(2rem, 4vw, 3rem);
          line-height: 1.15;
          margin-top: 16px;
          margin-bottom: 32px;
          text-transform: uppercase;
          color: #ffffff;
          font-weight: 700;
          letter-spacing: -0.01em;
          background: linear-gradient(180deg, #ffffff 30%, var(--brand-gold) 100%);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
        }

        .flow-track-indicator {
          display: flex;
          gap: 20px;
          align-items: stretch;
          height: 240px;
          margin-top: 20px;
        }

        .flow-track-bar {
          width: 4px;
          background-color: rgba(255, 255, 255, 0.05);
          border-radius: 20px;
          position: relative;
          overflow: hidden;
        }

        .flow-track-fill {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 0%;
          background: linear-gradient(to bottom, var(--brand-gold), #22c55e);
          border-radius: 20px;
          transition: height 0.35s cubic-bezier(0.16, 1, 0.3, 1);
        }

        /* Glowing head particle on scroll track */
        .flow-track-fill::after {
          content: '';
          position: absolute;
          bottom: 0;
          left: 50%;
          transform: translateX(-50%);
          width: 10px;
          height: 10px;
          background-color: #22c55e;
          border-radius: 50%;
          box-shadow: 0 0 10px #22c55e, 0 0 20px #22c55e;
          animation: pulse-glow-head 1.5s infinite alternate;
        }

        @keyframes pulse-glow-head {
          0% {
            box-shadow: 0 0 6px #22c55e, 0 0 12px #22c55e;
          }
          100% {
            box-shadow: 0 0 14px #22c55e, 0 0 25px #22c55e, 0 0 35px #22c55e;
          }
        }

        .flow-track-labels {
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          font-family: var(--font-headings);
          font-size: 0.8rem;
          font-weight: 700;
          color: #475569;
          letter-spacing: 0.05em;
        }

        .flow-track-labels span {
          transition: color 0.4s ease, transform 0.4s ease, font-weight 0.4s ease;
          color: #475569;
          font-weight: 700;
          transform-origin: left center;
          display: inline-block;
        }

        .flow-track-labels span.label-active {
          color: var(--brand-gold);
          transform: scale(1.05);
          font-weight: 800;
        }

        .flow-right-panel {
          position: relative;
          height: 100%;
          width: 100%;
          display: flex;
          align-items: center;
        }

        /* Golden-green ambient radial light orb behind absolute cards stack */
        .flow-right-panel::before {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 320px;
          height: 320px;
          background: radial-gradient(circle, rgba(196, 164, 108, 0.07) 0%, rgba(34, 197, 94, 0.02) 60%, transparent 100%);
          filter: blur(60px);
          pointer-events: none;
          z-index: 0;
        }

        .flow-steps-stack {
          position: relative;
          width: 100%;
          height: 480px;
          overflow: hidden;
          z-index: 1;
        }

        .flow-step-panel {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: flex-start;
          text-align: left;
          opacity: 0;
          transform: translateY(100%) scale(0.95);
          transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
          pointer-events: none;
        }

        .flow-step-panel.step-active {
          opacity: 1;
          transform: translateY(0) scale(1);
          pointer-events: auto;
          z-index: 2;
        }

        .flow-step-panel.step-before {
          opacity: 0;
          transform: translateY(-100%) scale(0.95);
          pointer-events: none;
          z-index: 1;
        }

        .flow-step-panel.step-after {
          opacity: 0;
          transform: translateY(100%) scale(0.95);
          pointer-events: none;
          z-index: 1;
        }

        /* Staggered entry initial state of contents inside card */
        .flow-step-panel .flow-step-num {
          opacity: 0;
          transform: scale(0.5) rotate(-15deg);
          transition: transform 0.4s ease-out, opacity 0.4s ease-out;
        }

        .flow-step-panel .flow-step-title {
          opacity: 0;
          transform: translateY(20px);
          transition: transform 0.4s ease-out, opacity 0.4s ease-out;
        }

        .flow-step-panel .flow-step-desc {
          opacity: 0;
          transform: translateY(20px);
          transition: transform 0.4s ease-out, opacity 0.4s ease-out;
        }

        .flow-step-panel .flow-step-telemetry {
          opacity: 0;
          transform: translateY(15px);
          transition: transform 0.4s ease-out, opacity 0.4s ease-out;
        }

        /* Staggered entrance animations on active card */
        .flow-step-panel.step-active .flow-step-num {
          opacity: 1;
          transform: scale(1) rotate(0deg);
          transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) 0.15s, opacity 0.6s ease-out 0.15s;
        }

        .flow-step-panel.step-active .flow-step-title {
          opacity: 1;
          transform: translateY(0);
          transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.25s, opacity 0.7s ease-out 0.25s;
        }

        .flow-step-panel.step-active .flow-step-desc {
          opacity: 1;
          transform: translateY(0);
          transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.35s, opacity 0.7s ease-out 0.35s;
        }

        .flow-step-panel.step-active .flow-step-telemetry {
          opacity: 1;
          transform: translateY(0);
          transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1) 0.45s, opacity 0.7s ease-out 0.45s;
        }

        /* Glassmorphism card detailing */
        .flow-step-card {
          background: linear-gradient(135deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%);
          backdrop-filter: blur(10px);
          border: 1px solid rgba(196, 164, 108, 0.08);
          border-radius: 20px;
          padding: 44px;
          width: 100%;
          box-shadow: 0 20px 50px rgba(0, 0, 0, 0.3), inset 0 1px 1px rgba(255,255,255,0.05);
          position: relative;
          overflow: hidden;
          transition: border-color 0.4s ease, box-shadow 0.4s ease;
        }

        .flow-step-panel.step-active .flow-step-card {
          border-color: rgba(196, 164, 108, 0.22);
          box-shadow: 0 30px 60px rgba(0, 0, 0, 0.45), 0 0 20px var(--brand-gold-glow), inset 0 1px 1px rgba(255,255,255,0.08);
        }

        .flow-step-num {
          font-family: var(--font-headings);
          font-size: 1.1rem;
          font-weight: 800;
          color: var(--brand-gold);
          background-color: rgba(140, 111, 56, 0.1);
          border: 1px solid var(--border-gold);
          border-radius: 50%;
          width: 44px;
          height: 44px;
          display: flex;
          align-items: center;
          justify-content: center;
          margin-bottom: 24px;
          box-shadow: 0 0 15px rgba(140, 111, 56, 0.1);
        }

        .flow-step-title {
          font-size: 2.2rem;
          font-weight: 700;
          color: #ffffff;
          margin-bottom: 16px;
          text-transform: uppercase;
        }

        .flow-step-desc {
          font-size: 1.05rem;
          line-height: 1.7;
          color: #cbd5e1;
          margin-bottom: 28px;
        }

        .flow-step-telemetry {
          display: flex;
          flex-direction: column;
          border-top: 1px dashed rgba(255, 255, 255, 0.08);
          padding-top: 16px;
          width: 100%;
        }

        .tel-label {
          font-family: var(--font-headings);
          font-size: 0.68rem;
          font-weight: 700;
          color: var(--brand-gold);
          letter-spacing: 0.05em;
          margin-bottom: 4px;
        }

        .tel-value {
          font-size: 0.9rem;
          font-weight: 600;
          color: #22c55e;
        }

        /* Fleet Fit Finder Styling */
        .fit-finder-section {
          padding: 80px 0;
          background-color: var(--bg-primary);
          border-bottom: 1px solid var(--border-dark);
        }

        .fit-finder-header {
          text-align: center;
          margin-bottom: 40px;
        }

        .fit-finder-tabs {
          display: flex;
          justify-content: center;
          gap: 12px;
          margin-bottom: 36px;
          flex-wrap: wrap;
        }

        .fit-tab {
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-dark);
          color: var(--text-gray);
          padding: 10px 20px;
          font-family: var(--font-headings);
          font-size: 0.8rem;
          font-weight: 700;
          border-radius: 4px;
          cursor: pointer;
          transition: var(--transition-fast);
          display: flex;
          align-items: center;
          gap: 8px;
          text-transform: uppercase;
          letter-spacing: 0.05em;
        }

        .fit-tab:hover {
          border-color: var(--brand-gold);
          color: var(--text-white);
        }

        .fit-tab.active {
          background-color: var(--brand-gold);
          color: #060907;
          border-color: var(--brand-gold);
          box-shadow: 0 4px 15px rgba(196, 164, 108, 0.25);
        }

        .fit-finder-info-row {
          text-align: center;
          margin-bottom: 32px;
          max-width: 600px;
          margin-left: auto;
          margin-right: auto;
        }

        .fit-finder-info-row h3 {
          font-size: 1.4rem;
          color: var(--text-white);
          margin-bottom: 8px;
          font-family: var(--font-headings);
          font-weight: 700;
        }

        .fit-finder-info-row p {
          color: var(--text-gray);
          font-size: 0.9rem;
        }

        .fit-recommendations-grid {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 32px;
          max-width: 1000px;
          margin: 0 auto;
        }

        .fit-card {
          display: flex;
          flex-direction: column;
          background-color: #f9f9f9;
          border: 1px solid rgba(0, 0, 0, 0.08);
          border-radius: 8px;
          overflow: hidden;
          transition: var(--transition-normal);
          text-align: left;
        }

        .fit-card:hover {
          transform: translateY(-5px);
          border-color: #8c6f38;
          box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15), 0 0 10px rgba(140, 111, 56, 0.15);
        }

        .fit-card-img-wrapper {
          position: relative;
          height: 180px;
          background: linear-gradient(135deg, #edf2ef 0%, #dce3e0 100%);
          display: flex;
          align-items: center;
          justify-content: center;
          padding: 16px;
          border-bottom: 1px solid rgba(196, 164, 108, 0.15);
          overflow: hidden;
        }

        .fit-card-img {
          width: 90%;
          height: 90%;
          object-fit: contain;
          filter: drop-shadow(0 8px 16px rgba(0,0,0,0.5));
          transform: scale(var(--img-scale, 1));
          transition: var(--transition-normal);
        }

        .fit-card:hover .fit-card-img {
          transform: scale(calc(var(--img-scale, 1) * 1.08));
        }

        .fit-card-details {
          padding: 20px;
          display: flex;
          flex-direction: column;
          flex-grow: 1;
        }

        .fit-card-tag {
          font-family: var(--font-headings);
          font-size: 0.65rem;
          color: #8c6f38;
          font-weight: 700;
          letter-spacing: 0.05em;
          text-transform: uppercase;
          margin-bottom: 6px;
        }

        .fit-card-title {
          font-size: 1.1rem;
          font-weight: 700;
          color: #0d1510;
          margin-bottom: 8px;
          line-height: 1.3;
        }

        .fit-card-highlights {
          font-size: 0.8rem;
          color: #374151;
          margin-bottom: 16px;
          font-weight: 500;
          display: flex;
          align-items: center;
          gap: 6px;
        }

        .highlight-bullet {
          color: #8c6f38;
          font-size: 1.2rem;
          line-height: 1;
        }

        .fit-card-specs {
          background-color: #f1f4f2;
          border-radius: 4px;
          padding: 10px 14px;
          display: flex;
          flex-direction: column;
          gap: 6px;
          margin-bottom: 20px;
          border: 1px solid rgba(140, 111, 56, 0.12);
        }

        .fit-spec-item {
          display: flex;
          justify-content: space-between;
          font-size: 0.75rem;
          border-bottom: 1px dashed rgba(0, 0, 0, 0.06);
          padding-bottom: 4px;
        }

        .fit-spec-item:last-child {
          border-bottom: none;
          padding-bottom: 0;
        }

        .fit-spec-lbl {
          color: #8c6f38;
          font-family: var(--font-headings);
          font-weight: 600;
          text-transform: uppercase;
          font-size: 0.7rem;
        }

        .fit-spec-val {
          color: #0d1510;
          font-weight: 500;
        }

        .fit-card-actions {
          display: flex;
          gap: 10px;
          margin-top: auto;
        }

        .fit-card-actions .btn-gold-outline {
          border-color: rgba(0, 0, 0, 0.15);
          color: #4b5563;
        }

        .fit-card-actions .btn-gold-outline:hover {
          border-color: #8c6f38;
          color: #8c6f38;
          background-color: rgba(140, 111, 56, 0.05);
        }

        .fit-card-actions .btn-primary:hover {
          background-color: #8c6f38;
          color: #ffffff;
          border-color: #8c6f38;
        }

        @media (max-width: 768px) {
          .fit-recommendations-grid {
            grid-template-columns: 1fr;
            gap: 24px;
          }
        }

        /* Stats Section */
        .stats-section {
          background-color: var(--bg-secondary);
          border-top: 1px solid var(--border-dark);
          border-bottom: 1px solid var(--border-dark);
          padding: 40px 0;
        }

        .stats-container {
          display: flex;
          justify-content: space-around;
          flex-wrap: wrap;
          gap: 32px;
        }

        .stat-card {
          text-align: center;
          display: flex;
          flex-direction: column;
          min-width: 180px;
        }

        .stat-value {
          font-family: var(--font-headings);
          font-size: 3.2rem;
          font-weight: 800;
          color: var(--brand-gold);
          line-height: 1;
          margin-bottom: 8px;
        }

        .stat-label {
          font-size: 0.9rem;
          color: var(--text-gray);
          text-transform: uppercase;
          letter-spacing: 0.05em;
        }

        /* Features Section */
        .features-section {
          padding: 80px 0;
        }

        .section-badge {
          margin: 0 auto 16px auto;
          display: table;
        }

        .features-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 32px;
          margin-top: 48px;
        }

        .feature-card {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
        }

        .feature-icon-wrapper {
          border: 1px solid var(--border-gold);
          background-color: rgba(196, 164, 108, 0.05);
          width: 56px;
          height: 56px;
          display: flex;
          align-items: center;
          justify-content: center;
          margin-bottom: 24px;
          border-radius: 4px;
          transition: var(--transition-fast);
        }

        .feature-card:hover .feature-icon-wrapper {
          background-color: var(--brand-gold);
        }

        .feature-card:hover .gold-icon {
          color: #060907;
        }

        .feature-title {
          font-size: 1.4rem;
          margin-bottom: 12px;
          font-weight: 700;
        }

        .feature-desc {
          color: var(--text-gray);
          font-size: 0.95rem;
          line-height: 1.6;
        }

        /* Categories section */
        .categories-section {
          padding: 80px 0;
          background-color: var(--bg-secondary);
          border-top: 1px solid var(--border-dark);
          border-bottom: 1px solid var(--border-dark);
        }

        .categories-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 32px;
          margin-top: 48px;
        }

        .category-card {
          background-color: #f9f9f9;
          border: 1px solid rgba(0, 0, 0, 0.06);
          border-radius: 8px;
          overflow: hidden;
          cursor: pointer;
          transition: var(--transition-normal);
          position: relative;
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
        }

        .category-card:hover {
          transform: translateY(-8px);
          border-color: var(--brand-gold);
          box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08), 0 0 15px rgba(196, 164, 108, 0.15);
        }

        .category-img-container {
          position: relative;
          height: 220px;
          overflow: hidden;
          background: linear-gradient(135deg, #edf2ef 0%, #dce3e0 100%);
          display: flex;
          justify-content: center;
          align-items: center;
        }

        .category-img-cover {
          width: 100%;
          height: 100%;
          object-fit: cover;
          transition: var(--transition-normal);
        }

        .category-card:hover .category-img-cover {
          transform: scale(1.08);
        }

        .category-img-render {
          max-width: 90%;
          max-height: 90%;
          object-fit: contain;
          transform: scale(var(--img-scale, 1));
          transition: var(--transition-normal);
          filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.08));
        }

        .category-card:hover .category-img-render {
          transform: scale(calc(var(--img-scale, 1) * 1.05));
          filter: drop-shadow(0 15px 20px rgba(0, 0, 0, 0.12));
        }

        .category-gradient {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: linear-gradient(to top, rgba(249, 249, 249, 0.8) 0%, transparent 50%);
          pointer-events: none;
        }

        .category-content {
          padding: 24px;
          border-top: 1px solid rgba(0, 0, 0, 0.03);
        }

        .category-tag {
          font-family: var(--font-headings);
          font-size: 0.7rem;
          font-weight: 700;
          color: #8c6f38;
          letter-spacing: 0.05em;
          text-transform: uppercase;
        }

        .category-card .category-title {
          font-size: 1.3rem;
          margin: 4px 0 8px 0;
          font-weight: 700;
          color: #0d1510;
        }

        .category-tagline {
          color: #4b5563;
          font-size: 0.85rem;
          margin-bottom: 20px;
          height: 40px;
          overflow: hidden;
          line-height: 1.5;
        }

        .category-link {
          font-family: var(--font-headings);
          font-size: 0.8rem;
          font-weight: 700;
          letter-spacing: 0.05em;
          color: #0d1510;
          display: flex;
          align-items: center;
          gap: 6px;
          transition: var(--transition-fast);
        }

        .category-card:hover .category-link {
          color: var(--brand-gold);
        }

        .category-card:hover .cat-arrow {
          transform: translateX(4px);
        }

        @media (max-width: 1024px) {
          .categories-grid {
            grid-template-columns: repeat(2, 1fr);
            gap: 24px;
          }
        }

        @media (max-width: 600px) {
          .categories-grid {
            grid-template-columns: 1fr;
            gap: 20px;
          }
        }

        /* Search Lookup Banner */
        .search-lookup-section {
          padding: 60px 0;
        }

        .search-lookup-card {
          background: linear-gradient(135deg, var(--brand-green) 0%, var(--brand-green-dark) 100%);
          border: 1px solid var(--border-gold);
          border-radius: 8px;
          padding: 48px;
          text-align: center;
          box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }

        .search-lookup-title {
          font-size: 1.8rem;
          margin-bottom: 12px;
          color: #ffffff !important;
        }

        .search-lookup-desc {
          color: #e2e8f0 !important;
          margin-bottom: 28px;
          font-size: 1rem;
        }

        .search-lookup-box {
          display: flex;
          max-width: 600px;
          margin: 0 auto;
          gap: 12px;
        }

        .search-lookup-input {
          flex: 1;
          background-color: rgba(255, 255, 255, 0.1);
          border: 1px solid rgba(255, 255, 255, 0.2);
          color: #ffffff;
          padding: 14px 20px;
          border-radius: 4px;
          font-size: 0.95rem;
        }

        .search-lookup-input::placeholder {
          color: rgba(255, 255, 255, 0.5);
        }

        .search-lookup-input:focus {
          outline: none;
          background-color: rgba(255, 255, 255, 0.15);
          border-color: var(--brand-gold);
          box-shadow: 0 0 8px var(--brand-gold-glow);
        }

        /* Trust Section */
        .trust-section {
          padding: 80px 0;
          background-color: var(--bg-secondary);
          border-top: 1px solid var(--border-dark);
        }

        .trust-grid {
          display: grid;
          grid-template-columns: 1.2fr 0.8fr;
          gap: 60px;
          align-items: center;
        }

        .trust-left {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
        }

        .rating-stars {
          display: flex;
          gap: 4px;
          margin: 16px 0 24px 0;
        }

        .trust-title {
          font-size: 2rem;
          font-weight: 800;
          margin-top: 8px;
        }

        .trust-quote {
          font-size: 1.25rem;
          line-height: 1.7;
          color: var(--text-white);
          font-style: italic;
          margin-bottom: 20px;
          font-weight: 300;
        }

        .trust-author {
          font-family: var(--font-headings);
          color: var(--brand-gold);
          font-weight: 600;
          font-size: 0.95rem;
          letter-spacing: 0.05em;
        }

        .trust-right {
          display: flex;
          flex-direction: column;
          gap: 32px;
          background-color: var(--bg-primary);
          padding: 40px;
          border: 1px solid var(--border-dark);
          border-radius: 8px;
        }

        .trust-metric {
          display: flex;
          flex-direction: column;
          align-items: center;
          text-align: center;
        }

        .metric-num {
          font-family: var(--font-headings);
          font-size: 3rem;
          font-weight: 800;
          color: var(--brand-gold);
          line-height: 1;
          margin-bottom: 8px;
        }

        .metric-label {
          font-size: 0.8rem;
          color: var(--text-gray);
          letter-spacing: 0.1em;
          font-weight: 600;
        }

        .trust-metric-divider {
          height: 1px;
          background-color: var(--border-dark);
          width: 60px;
          align-self: center;
        }

        /* Responsive */
        @media (max-width: 1024px) {
          .hero-section {
            padding: 60px 0;
            min-height: auto;
          }
          .hero-video-overlay {
            background: rgba(6, 9, 7, 0.85);
          }
          .hero-container {
            flex-direction: column;
            text-align: center;
            gap: 40px;
            justify-content: center;
          }
          .hero-content {
            display: flex;
            flex-direction: column;
            align-items: center;
          }
          .hero-desc {
            margin-left: auto;
            margin-right: auto;
          }
          .hero-actions {
            justify-content: center;
          }


          .features-grid {
            grid-template-columns: 1fr;
          }
          .categories-grid {
            grid-template-columns: repeat(2, 1fr);
          }
          .trust-grid {
            grid-template-columns: 1fr;
            gap: 40px;
          }
          .trust-left {
            align-items: center;
            text-align: center;
          }
        }

        @media (max-width: 768px) {
          .hero-title {
            font-size: 2.5rem;
          }
          .search-lookup-box {
            flex-direction: column;
          }
          .search-lookup-btn {
            width: 100%;
          }
          .categories-grid {
            grid-template-columns: 1fr;
          }
          .stats-container {
            grid-template-columns: repeat(2, 1fr);
          }
        }

        /* ----------------------------------------------------
           MACHINERY STORYTELLING SECTION
           ---------------------------------------------------- */
        .storytelling-section {
          padding: 80px 0;
          position: relative;
          background: linear-gradient(180deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);
          border-bottom: 1px solid var(--border-dark);
        }

        .storytelling-grid {
          display: grid;
          grid-template-columns: 320px 1fr;
          gap: 48px;
          max-width: 1200px;
          margin: 0 auto;
        }

        .story-timeline {
          display: flex;
          flex-direction: column;
          gap: 16px;
        }

        .timeline-node {
          display: flex;
          align-items: center;
          gap: 16px;
          padding: 16px 20px;
          background-color: rgba(38, 57, 44, 0.03);
          border: 1px solid var(--border-dark);
          border-radius: 6px;
          cursor: pointer;
          transition: var(--transition-normal);
          text-align: left;
        }

        .timeline-node:hover {
          border-color: var(--brand-gold);
          background-color: rgba(38, 57, 44, 0.08);
        }

        .timeline-node.active {
          border-color: var(--brand-gold);
          background-color: var(--bg-secondary);
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05), 0 0 10px var(--brand-gold-glow);
        }

        .node-number {
          font-family: var(--font-headings);
          font-size: 1.3rem;
          font-weight: 700;
          color: var(--text-gray);
          transition: var(--transition-fast);
        }

        .timeline-node.active .node-number {
          color: var(--brand-gold);
        }

        .node-info {
          display: flex;
          flex-direction: column;
        }

        .node-label {
          font-size: 0.65rem;
          color: var(--brand-gold);
          font-family: var(--font-headings);
          font-weight: 700;
          letter-spacing: 0.05em;
        }

        .node-title {
          font-size: 0.9rem;
          font-weight: 700;
          color: var(--text-white);
          margin-top: 2px;
        }

        /* Detail Board on the right */
        .story-details-board {
          padding: 40px;
          text-align: left;
          display: flex;
          flex-direction: column;
        }

        .story-header-row {
          margin-bottom: 24px;
          border-bottom: 1px solid var(--border-dark);
          padding-bottom: 16px;
        }

        .stage-badge {
          border-color: var(--brand-gold);
          color: var(--brand-gold);
          background-color: rgba(196, 164, 108, 0.05);
          margin-bottom: 8px;
        }

        .story-stage-title {
          font-family: var(--font-headings);
          font-size: 1.8rem;
          font-weight: 700;
          color: var(--text-white);
          line-height: 1.2;
          margin-bottom: 4px;
        }

        .story-stage-subtitle {
          font-size: 0.95rem;
          font-weight: 500;
          color: var(--brand-gold);
          font-family: var(--font-body);
        }

        .story-stage-desc {
          color: var(--text-gray);
          font-size: 0.95rem;
          line-height: 1.7;
          margin-bottom: 32px;
        }

        /* Technical layout split */
        .story-technical-split {
          display: grid;
          grid-template-columns: 1.2fr 1fr;
          gap: 32px;
          border-top: 1px dashed var(--border-dark);
          padding-top: 24px;
        }

        .tech-box-title {
          display: block;
          font-family: var(--font-headings);
          font-size: 0.8rem;
          font-weight: 700;
          letter-spacing: 0.05em;
          color: var(--brand-gold);
          margin-bottom: 12px;
          text-transform: uppercase;
        }

        .tech-highlights ul {
          list-style: none;
          display: flex;
          flex-direction: column;
          gap: 12px;
        }

        .tech-highlights li {
          font-size: 0.85rem;
          color: var(--text-white);
          line-height: 1.5;
        }

        .tech-specs-box {
          background-color: #ffffff;
          border: 1px solid var(--border-dark);
          border-radius: 6px;
          padding: 16px;
          display: flex;
          flex-direction: column;
          gap: 10px;
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
        }

        .tech-spec-row {
          display: flex;
          justify-content: space-between;
          font-size: 0.8rem;
          border-bottom: 1px dashed var(--border-dark);
          padding-bottom: 6px;
        }

        .tech-spec-row:last-child {
          border-bottom: none;
          padding-bottom: 0;
        }

        .t-label {
          color: var(--text-gray);
        }

        .t-value {
          color: var(--text-white);
          font-weight: 600;
        }

        @media (max-width: 1024px) {
          .storytelling-grid {
            grid-template-columns: 1fr;
            gap: 32px;
          }
          .story-timeline {
            flex-direction: row;
            overflow-x: auto;
            padding-bottom: 8px;
          }
          .timeline-node {
            flex-shrink: 0;
            min-width: 220px;
          }
        }

        @media (max-width: 768px) {
          .story-details-board {
            padding: 24px;
          }
          .story-stage-title {
            font-size: 1.4rem;
          }
          .story-technical-split {
            grid-template-columns: 1fr;
            gap: 24px;
          }
        }

        /* ----------------------------------------------------
           INTERACTIVE BLUEPRINT SHOWROOM SECTION
           ---------------------------------------------------- */
        .blueprint-showroom-section {
          padding: 80px 0;
          position: relative;
          background: linear-gradient(180deg, rgba(13, 21, 16, 0.4) 0%, rgba(6, 9, 7, 0.4) 100%);
          border-bottom: 1px solid rgba(255, 255, 255, 0.02);
        }

        .showroom-tabs-row {
          display: flex;
          justify-content: center;
          gap: 12px;
          margin-bottom: 36px;
          flex-wrap: wrap;
        }

        .showroom-tab-btn {
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-dark);
          color: var(--text-gray);
          padding: 10px 20px;
          font-family: var(--font-headings);
          font-weight: 700;
          font-size: 0.8rem;
          letter-spacing: 0.02em;
          border-radius: 4px;
          cursor: pointer;
          transition: var(--transition-fast);
          text-transform: uppercase;
        }

        .showroom-tab-btn:hover {
          border-color: var(--brand-gold);
          color: var(--text-white);
        }

        .showroom-tab-btn.active {
          background-color: var(--brand-gold);
          color: var(--bg-primary);
          border-color: var(--brand-gold);
          box-shadow: 0 0 10px var(--brand-gold-glow);
        }

        .showroom-display {
          max-width: 1200px;
          margin: 0 auto;
          padding: 32px;
        }

        .showroom-content-grid {
          display: grid;
          grid-template-columns: 1.2fr 1fr;
          gap: 48px;
          align-items: center;
        }

        /* Blueprint Media Box with Grid background */
        .blueprint-media-wrapper {
          position: relative;
          height: 380px;
          background-color: rgba(6, 9, 7, 0.85);
          border: 1px solid rgba(196, 164, 108, 0.15);
          border-radius: 8px;
          overflow: hidden;
          display: flex;
          align-items: center;
          justify-content: center;
          padding: 24px;
          box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.8);
        }

        .grid-overlay-blueprint {
          position: absolute;
          inset: 0;
          background-image: 
            linear-gradient(rgba(196, 164, 108, 0.04) 1px, transparent 1px),
            linear-gradient(90deg, rgba(196, 164, 108, 0.04) 1px, transparent 1px);
          background-size: 20px 20px;
          pointer-events: none;
        }

        .blueprint-main-img {
          max-width: 90%;
          max-height: 90%;
          object-fit: contain;
          transition: var(--transition-normal);
          filter: drop-shadow(0 15px 30px rgba(0, 0, 0, 0.6));
        }

        /* Pulsating Hotspots */
        .showroom-hotspot {
          position: absolute;
          width: 32px;
          height: 32px;
          border-radius: 50%;
          background-color: var(--brand-gold);
          border: none;
          color: var(--bg-primary);
          font-weight: 700;
          font-size: 1.1rem;
          cursor: pointer;
          display: flex;
          align-items: center;
          justify-content: center;
          z-index: 10;
          transform: translate(-50%, -50%);
          box-shadow: 0 0 12px rgba(196, 164, 108, 0.8);
          transition: var(--transition-fast);
        }

        .showroom-hotspot:hover,
        .showroom-hotspot.active {
          background-color: var(--text-white);
          color: var(--bg-primary);
          transform: translate(-50%, -50%) scale(1.15);
          box-shadow: 0 0 15px rgba(255, 255, 255, 0.9);
        }

        .pulse-ring {
          position: absolute;
          inset: -6px;
          border: 1px solid var(--brand-gold);
          border-radius: 50%;
          animation: hotspotPulse 2s infinite ease-out;
          pointer-events: none;
        }

        .showroom-hotspot.active .pulse-ring {
          border-color: var(--text-white);
        }

        .hotspot-inner-symbol {
          position: relative;
          top: -1px;
          line-height: 1;
        }

        @media (max-width: 900px) {
          .showroom-content-grid {
            grid-template-columns: 1fr;
            gap: 32px;
          }
          .blueprint-media-wrapper {
            height: 300px;
          }
          .hotspot-placeholder-card {
            min-height: auto;
          }
        }

        @keyframes hotspotPulse {
          0% { transform: scale(0.8); opacity: 1; }
          100% { transform: scale(1.4); opacity: 0; }
        }

        /* Right column: Info details */
        .blueprint-info-pane {
          text-align: left;
          display: flex;
          flex-direction: column;
          gap: 28px;
          height: 100%;
          justify-content: center;
        }

        .machine-summary-header {
          border-bottom: 1px solid var(--border-dark);
          padding-bottom: 20px;
        }

        .machine-type-badge {
          border-color: var(--brand-gold);
          color: var(--brand-gold);
          background-color: rgba(196, 164, 108, 0.05);
          margin-bottom: 10px;
        }

        .blueprint-machine-title {
          font-family: var(--font-headings);
          font-size: 1.6rem;
          font-weight: 700;
          color: var(--text-white);
          margin-bottom: 8px;
        }

        .blueprint-machine-desc {
          color: var(--text-gray);
          font-size: 0.9rem;
          line-height: 1.6;
        }

        /* Detail card popup */
        .hotspot-detail-card {
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-dark);
          border-radius: 6px;
          padding: 24px;
          box-shadow: 0 10px 20px rgba(0, 0, 0, 0.04);
          border-left: 4px solid var(--brand-gold);
        }

        .hotspot-badge {
          font-family: var(--font-headings);
          font-size: 0.65rem;
          color: var(--brand-gold);
          border-color: var(--border-gold);
          margin-bottom: 8px;
        }

        .hotspot-card-title {
          font-family: var(--font-headings);
          font-size: 1.1rem;
          font-weight: 700;
          color: var(--text-white);
          margin-bottom: 6px;
        }

        .hotspot-card-text {
          color: var(--text-gray);
          font-size: 0.85rem;
          line-height: 1.5;
        }

        .hotspot-placeholder-card {
          border: 1px dashed var(--border-dark);
          border-radius: 6px;
          padding: 24px;
          display: flex;
          align-items: center;
          justify-content: center;
          min-height: 120px;
          background-color: rgba(38, 57, 44, 0.02);
        }

        .click-guide-text {
          font-size: 0.85rem;
          color: var(--text-gray);
          line-height: 1.5;
          font-style: italic;
        }

        /* Machine Spotlight Slider Section */
        .machine-spotlight-section {
          background-color: #ffffff;
          padding: 90px 0;
          border-top: 1px solid rgba(0, 0, 0, 0.05);
          border-bottom: 1px solid rgba(0, 0, 0, 0.05);
          overflow: hidden;
          width: 100%;
        }

        .spotlight-container {
          display: flex;
          flex-direction: column;
          align-items: center;
          position: relative;
        }

        /* Top Tabs */
        .spotlight-tabs {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 40px;
          margin-bottom: 30px;
          border-bottom: 1px solid rgba(0, 0, 0, 0.08);
          padding-bottom: 15px;
          width: 100%;
          max-width: 800px;
        }

        .spotlight-tab-btn {
          background: none;
          border: none;
          color: #9ca3af;
          font-family: var(--font-headings);
          font-size: 1.15rem;
          font-weight: 500;
          letter-spacing: 0.05em;
          padding: 8px 16px;
          cursor: pointer;
          position: relative;
          transition: var(--transition-fast);
        }

        .spotlight-tab-btn:hover {
          color: #4b5563;
        }

        .spotlight-tab-btn.active {
          color: #0d1510;
          font-weight: 700;
        }

        .spotlight-tab-btn::after {
          content: '';
          position: absolute;
          bottom: -16px;
          left: 0;
          width: 100%;
          height: 3px;
          background-color: var(--brand-gold);
          transform: scaleX(0);
          transition: var(--transition-fast);
        }

        .spotlight-tab-btn.active::after {
          transform: scaleX(1);
        }

        /* Slider Wrapper */
        .spotlight-slider-wrapper {
          display: flex;
          align-items: center;
          justify-content: space-between;
          width: 100%;
          max-width: 1100px;
          position: relative;
          margin-bottom: 40px;
        }

        /* Canvas and Spotlight Glow */
        .spotlight-canvas {
          flex: 1;
          height: 480px;
          position: relative;
          display: flex;
          justify-content: center;
          align-items: center;
        }

        .spotlight-glow-background {
          position: absolute;
          width: 650px;
          height: 450px;
          border-radius: 50%;
          background: radial-gradient(circle, rgba(38, 57, 44, 0.06) 0%, rgba(255, 255, 255, 0) 70%);
          pointer-events: none;
          z-index: 1;
        }

        .spotlight-image-container {
          position: relative;
          width: 100%;
          height: 100%;
          z-index: 2;
        }

        .spotlight-machine-img {
          position: absolute;
          top: 50%;
          left: 50%;
          max-width: 85%;
          max-height: 85%;
          object-fit: contain;
          opacity: 0;
          pointer-events: none;
          transition: opacity 0.6s cubic-bezier(0.4, 0, 0.2, 1), transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .spotlight-machine-img.active {
          opacity: 1;
          pointer-events: auto;
          transform: translate(-50%, -50%) scale(var(--img-scale, 1));
        }

        .spotlight-machine-img.exit-left {
          opacity: 0;
          transform: translate(-70%, -50%) scale(calc(var(--img-scale, 1) * 0.9));
        }

        .spotlight-machine-img.enter-right {
          opacity: 0;
          transform: translate(-30%, -50%) scale(calc(var(--img-scale, 1) * 0.9));
        }

        /* Cycle Arrows */
        .spotlight-arrow {
          background: #ffffff;
          border: 1px solid rgba(0, 0, 0, 0.08);
          color: #4b5563;
          width: 56px;
          height: 56px;
          border-radius: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          cursor: pointer;
          transition: var(--transition-fast);
          z-index: 10;
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
        }

        .spotlight-arrow:hover {
          background-color: #f3f4f6;
          border-color: rgba(0, 0, 0, 0.15);
          color: #0d1510;
          transform: scale(1.05);
        }

        .spotlight-arrow:active {
          transform: scale(0.95);
        }

        /* Bottom CTA */
        .spotlight-cta-container {
          display: flex;
          justify-content: center;
          width: 100%;
        }

        .spotlight-cta-btn {
          background-color: transparent;
          border: 1.5px solid #0d1510;
          color: #0d1510;
          font-family: var(--font-headings);
          font-size: 0.95rem;
          font-weight: 700;
          letter-spacing: 0.06em;
          padding: 16px 36px;
          border-radius: 50px;
          cursor: pointer;
          display: flex;
          align-items: center;
          gap: 12px;
          transition: var(--transition-normal);
        }

        .spotlight-cta-btn:hover {
          background-color: #0d1510;
          color: #ffffff;
          box-shadow: 0 10px 20px rgba(13, 21, 16, 0.15);
          border-color: #0d1510;
        }

        .cta-arrow-icon {
          font-size: 1.1rem;
          transition: transform 0.3s ease;
        }

        .spotlight-cta-btn:hover .cta-arrow-icon {
          transform: translateX(4px);
        }

        /* Responsive Spotlight */
        @media (max-width: 768px) {
          .machine-spotlight-section {
            padding: 60px 0;
          }
          .spotlight-tabs {
            gap: 20px;
            overflow-x: auto;
            white-space: nowrap;
            justify-content: flex-start;
            padding-left: 20px;
            padding-right: 20px;
            mask-image: linear-gradient(to right, transparent, #000 10%, #000 90%, transparent);
          }
          .spotlight-tab-btn {
            font-size: 0.95rem;
          }
          .spotlight-canvas {
            height: 320px;
          }
          .spotlight-glow-background {
            width: 100%;
            height: 280px;
          }
          .spotlight-arrow {
            width: 44px;
            height: 44px;
          }
          .spotlight-cta-btn {
            font-size: 0.85rem;
            padding: 12px 24px;
            width: 90%;
            justify-content: center;
          }
        }

        /* Video Gallery Section */
        .video-gallery-section {
          background-color: var(--bg-primary);
          padding: 80px 0;
          border-bottom: 1px solid var(--border-dark);
        }

        .gallery-filters {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 16px;
          margin-top: 32px;
          flex-wrap: wrap;
        }

        .gallery-filter-btn {
          background-color: transparent;
          border: 1px solid var(--border-gold);
          color: var(--brand-gold);
          font-family: var(--font-headings);
          font-size: 0.85rem;
          font-weight: 700;
          letter-spacing: 0.05em;
          padding: 10px 24px;
          border-radius: 4px;
          cursor: pointer;
          transition: var(--transition-fast);
        }

        .gallery-filter-btn:hover {
          background-color: rgba(196, 164, 108, 0.08);
          transform: translateY(-2px);
        }

        .gallery-filter-btn.active {
          background-color: var(--brand-gold);
          color: #060907;
          border-color: var(--brand-gold);
          box-shadow: 0 4px 15px rgba(196, 164, 108, 0.25);
        }

        .video-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 32px;
          margin-top: 48px;
        }

        .video-card {
          cursor: pointer;
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-dark);
          transition: var(--transition-normal);
          display: flex;
          flex-direction: column;
          align-items: stretch;
          text-align: left;
        }

        .video-card:hover {
          transform: translateY(-8px);
          border-color: var(--brand-gold);
          box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4), 0 0 10px var(--brand-gold-glow);
        }

        .video-thumbnail-box {
          position: relative;
          height: 220px;
          overflow: hidden;
          background-color: #000;
        }

        .video-thumbnail {
          width: 100%;
          height: 100%;
          object-fit: cover;
          transition: var(--transition-normal);
          opacity: 0.85;
        }

        .video-card:hover .video-thumbnail {
          transform: scale(1.05);
          opacity: 1;
        }

        .video-overlay-tint {
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: linear-gradient(to top, rgba(13, 21, 16, 0.6) 0%, transparent 60%);
        }

        .play-icon-btn {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%) scale(1.0);
          width: 56px;
          height: 56px;
          background-color: var(--brand-gold);
          color: #060907;
          border-radius: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          transition: var(--transition-normal);
          z-index: 5;
          box-shadow: 0 4px 15px rgba(0, 0, 0, 0.35);
        }

        .video-card:hover .play-icon-btn {
          transform: translate(-50%, -50%) scale(1.12);
          background-color: var(--brand-gold-hover);
          animation: play-pulse 2s infinite;
        }

        .play-icon-svg {
          transform: translateX(2px);
        }

        @keyframes play-pulse {
          0% {
            box-shadow: 0 0 0 0 rgba(196, 164, 108, 0.6);
          }
          70% {
            box-shadow: 0 0 0 12px rgba(196, 164, 108, 0);
          }
          100% {
            box-shadow: 0 0 0 0 rgba(196, 164, 108, 0);
          }
        }

        .duration-tag {
          position: absolute;
          bottom: 12px;
          right: 12px;
          background-color: rgba(0, 0, 0, 0.75);
          color: var(--text-white);
          font-family: var(--font-headings);
          font-size: 0.75rem;
          font-weight: 700;
          padding: 4px 8px;
          border-radius: 4px;
          letter-spacing: 0.05em;
          border: 1px solid rgba(255, 255, 255, 0.1);
        }

        .video-card-content {
          padding: 24px;
          flex: 1;
          display: flex;
          flex-direction: column;
        }

        .video-card-tag {
          font-family: var(--font-headings);
          font-size: 0.7rem;
          font-weight: 700;
          color: var(--brand-gold);
          letter-spacing: 0.05em;
          margin-bottom: 6px;
        }

        .video-card-title {
          font-size: 1.25rem;
          font-weight: 700;
          margin-bottom: 8px;
          color: var(--text-white);
        }

        .video-card-desc {
          font-size: 0.85rem;
          line-height: 1.5;
          color: var(--text-gray);
        }

        /* Lightbox modal overlay styling */
        .video-lightbox-overlay {
          position: fixed;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background-color: rgba(6, 9, 7, 0.95);
          backdrop-filter: blur(8px);
          -webkit-backdrop-filter: blur(8px);
          z-index: 10000;
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 24px;
        }

        .video-lightbox-container {
          width: 100%;
          max-width: 960px;
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-gold);
          border-radius: 8px;
          overflow: hidden;
          box-shadow: 0 25px 50px rgba(0, 0, 0, 0.6), 0 0 30px rgba(196, 164, 108, 0.15);
          display: flex;
          flex-direction: column;
        }

        .video-lightbox-header {
          padding: 20px 24px;
          border-bottom: 1px solid var(--border-dark);
          display: flex;
          justify-content: space-between;
          align-items: center;
        }

        .lightbox-tag {
          margin-bottom: 4px;
        }

        .lightbox-title {
          font-size: 1.4rem;
          font-weight: 700;
          color: var(--text-white);
        }

        .lightbox-close-btn {
          background: none;
          border: none;
          color: var(--text-gray);
          font-size: 2.2rem;
          line-height: 1;
          cursor: pointer;
          transition: var(--transition-fast);
          padding: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          width: 40px;
          height: 40px;
          border-radius: 50%;
        }

        .lightbox-close-btn:hover {
          color: var(--text-white);
          background-color: rgba(255, 255, 255, 0.05);
          transform: rotate(90deg);
        }

        .video-lightbox-body {
          position: relative;
          background-color: #000;
          line-height: 0;
          display: flex;
          justify-content: center;
          align-items: center;
        }

        .lightbox-video-player {
          width: 100%;
          aspect-ratio: 16 / 9;
          outline: none;
          border: none;
        }

        .video-lightbox-footer {
          padding: 20px 24px;
          border-top: 1px solid var(--border-dark);
          background-color: rgba(6, 9, 7, 0.2);
        }

        .lightbox-desc {
          color: var(--text-gray);
          font-size: 0.95rem;
          line-height: 1.6;
        }

        @media (max-width: 1024px) {
          .video-grid {
            grid-template-columns: repeat(2, 1fr);
            gap: 24px;
          }
        }

        @media (max-width: 680px) {
          .video-grid {
            grid-template-columns: 1fr;
            gap: 24px;
          }
          .video-lightbox-overlay {
            padding: 12px;
          }
          .video-lightbox-header {
            padding: 16px;
          }
          .lightbox-title {
            font-size: 1.1rem;
          }
          .video-lightbox-footer {
            padding: 16px;
          }
          .lightbox-desc {
            font-size: 0.85rem;
          }
        }

        /* Connected Scroll-reveal animations */
        .scroll-reveal-section {
          opacity: 0;
          transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1), transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
          will-change: transform, opacity;
        }

        .scroll-reveal-section.is-visible {
          opacity: 1;
          transform: translateY(0) scale(1);
        }

        .scroll-reveal-section.is-hidden-bottom {
          opacity: 0;
          transform: translateY(45px) scale(0.985);
        }

        .scroll-reveal-section.is-hidden-top {
          opacity: 0;
          transform: translateY(-45px) scale(0.985);
        }

        /* Home FAQ Section Styling */
        .home-faq-section {
          padding: 100px 0;
          background-color: var(--bg-primary);
        }

        .home-faq-grid {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 28px;
          margin-top: 48px;
          overflow: hidden;
        }

        .home-faq-card {
          background-color: var(--bg-secondary);
          border: 1px solid var(--border-dark);
          border-radius: 8px;
          padding: 32px;
          transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.25s ease, box-shadow 0.25s ease;
          box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
          will-change: transform, opacity;
        }

        .home-faq-section.is-visible .home-faq-card:hover {
          border-color: var(--brand-gold);
          transform: translateY(-6px);
          box-shadow: 0 12px 30px var(--brand-gold-glow);
          transition: transform 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.25s ease, box-shadow 0.25s ease;
        }

        .faq-card-question {
          font-family: var(--font-headings);
          font-size: 1.2rem;
          font-weight: 700;
          color: var(--text-white);
          margin-bottom: 12px;
          text-transform: uppercase;
          letter-spacing: 0.02em;
        }

        .faq-card-answer {
          color: var(--text-gray);
          font-size: 0.95rem;
          line-height: 1.6;
        }

        /* Fly-in animations hooked to parent scroll-reveal */
        .home-faq-section.is-hidden-bottom .home-faq-card.fly-left,
        .home-faq-section.is-hidden-top .home-faq-card.fly-left {
          opacity: 0;
          transform: translateX(-150px);
        }

        .home-faq-section.is-hidden-bottom .home-faq-card.fly-right,
        .home-faq-section.is-hidden-top .home-faq-card.fly-right {
          opacity: 0;
          transform: translateX(150px);
        }

        .home-faq-section.is-visible .home-faq-card {
          opacity: 1;
          transform: translateX(0);
        }

        @media (max-width: 768px) {
          .home-faq-grid {
            grid-template-columns: 1fr;
            gap: 20px;
          }
          .home-faq-section.is-hidden-bottom .home-faq-card.fly-left,
          .home-faq-section.is-hidden-top .home-faq-card.fly-left {
            transform: translateX(-50px);
          }
          .home-faq-section.is-hidden-bottom .home-faq-card.fly-right,
          .home-faq-section.is-hidden-top .home-faq-card.fly-right {
            transform: translateX(50px);
          }
        }

        /* Saga Products Quadrants (Apple-style 2x2 Grid) */
        .saga-products-section {
          padding: 80px 0;
          background-color: var(--bg-primary);
        }

        .saga-products-grid {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 16px;
          max-width: 1440px;
          margin: 0 auto;
          padding: 0 16px;
        }

        .saga-product-quadrant {
          display: flex;
          flex-direction: column;
          align-items: center;
          border-radius: 16px;
          overflow: hidden;
          padding: 60px 40px 0 40px;
          min-height: 600px;
          border: 1px solid var(--border-dark);
          position: relative;
          cursor: pointer;
          transition: transform 1.1s cubic-bezier(0.16, 1, 0.3, 1), opacity 1.1s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s ease, border-color 0.3s ease;
          will-change: transform, opacity;
        }

        .saga-products-section.is-visible .saga-product-quadrant:hover {
          transform: translateY(-6px);
          box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
          border-color: rgba(140, 111, 56, 0.3);
          transition-delay: 0s !important;
        }

        /* Staggered transition delays for machine quadrants */
        .saga-products-section.is-visible .saga-product-quadrant:nth-child(1) {
          transition-delay: 0s;
        }

        .saga-products-section.is-visible .saga-product-quadrant:nth-child(2) {
          transition-delay: 0.15s;
        }

        .saga-products-section.is-visible .saga-product-quadrant:nth-child(3) {
          transition-delay: 0.3s;
        }

        .saga-products-section.is-visible .saga-product-quadrant:nth-child(4) {
          transition-delay: 0.45s;
        }

        .quadrant-content-top {
          display: flex;
          flex-direction: column;
          align-items: center;
          text-align: center;
          z-index: 10;
          width: 100%;
        }

        .quadrant-badge {
          font-family: var(--font-headings);
          font-size: 0.72rem;
          font-weight: 700;
          color: var(--brand-gold);
          letter-spacing: 0.1em;
          margin-bottom: 8px;
        }

        .quadrant-title {
          font-family: var(--font-headings);
          font-size: 2.2rem;
          font-weight: 700;
          line-height: 1.15;
          margin-bottom: 8px;
        }

        .quadrant-subtitle {
          font-size: 1.1rem;
          font-weight: 400;
          max-width: 460px;
          margin-bottom: 24px;
        }

        .quadrant-actions {
          display: flex;
          gap: 12px;
          margin-bottom: 40px;
        }

        /* Pill Buttons styling */
        .btn-pill {
          font-family: var(--font-headings);
          font-size: 0.78rem;
          font-weight: 700;
          letter-spacing: 0.02em;
          padding: 8px 24px;
          border-radius: 30px;
          border: 1px solid transparent;
          cursor: pointer;
          transition: var(--transition-fast);
          display: inline-flex;
          align-items: center;
          justify-content: center;
        }

        /* Theme Light Cream overrides */
        .saga-product-quadrant.light-cream {
          background: linear-gradient(180deg, #f8faf9 0%, #edf2ef 100%);
          border-color: rgba(0,0,0,0.06);
        }
        .saga-product-quadrant.light-cream .quadrant-title {
          color: #0f172a;
        }
        .saga-product-quadrant.light-cream .quadrant-subtitle {
          color: #475569;
        }
        .saga-product-quadrant.light-cream .btn-pill-primary {
          background-color: var(--brand-green);
          color: #ffffff;
        }
        .saga-product-quadrant.light-cream .btn-pill-primary:hover {
          background-color: var(--brand-green-hover);
          box-shadow: 0 4px 12px rgba(38, 57, 44, 0.2);
        }
        .saga-product-quadrant.light-cream .btn-pill-secondary {
          background-color: transparent;
          border-color: var(--brand-green);
          color: var(--brand-green);
        }
        .saga-product-quadrant.light-cream .btn-pill-secondary:hover {
          background-color: rgba(38, 57, 44, 0.05);
        }

        /* Theme Brand Green overrides */
        .saga-product-quadrant.brand-green {
          background: linear-gradient(180deg, var(--brand-green) 0%, var(--brand-green-dark) 100%);
          border-color: rgba(140, 111, 56, 0.25);
        }
        .saga-product-quadrant.brand-green .quadrant-title {
          color: #ffffff;
        }
        .saga-product-quadrant.brand-green .quadrant-subtitle {
          color: #cbd5e1;
        }
        .saga-product-quadrant.brand-green .btn-pill-primary {
          background-color: var(--brand-gold);
          color: #ffffff;
        }
        .saga-product-quadrant.brand-green .btn-pill-primary:hover {
          background-color: var(--brand-gold-hover);
          box-shadow: 0 4px 12px rgba(140, 111, 56, 0.3);
        }
        .saga-product-quadrant.brand-green .btn-pill-secondary {
          background-color: transparent;
          border-color: rgba(255, 255, 255, 0.3);
          color: #ffffff;
        }
        .saga-product-quadrant.brand-green .btn-pill-secondary:hover {
          background-color: rgba(255, 255, 255, 0.05);
          border-color: #ffffff;
        }

        /* Theme Dark Charcoal overrides */
        .saga-product-quadrant.dark-charcoal {
          background: linear-gradient(180deg, #131d17 0%, #0c120f 100%);
          border-color: rgba(0,0,0,0.3);
        }
        .saga-product-quadrant.dark-charcoal .quadrant-title {
          color: #ffffff;
        }
        .saga-product-quadrant.dark-charcoal .quadrant-subtitle {
          color: #94a3b8;
        }
        .saga-product-quadrant.dark-charcoal .btn-pill-primary {
          background-color: #ffffff;
          color: #0f172a;
        }
        .saga-product-quadrant.dark-charcoal .btn-pill-primary:hover {
          background-color: #f1f5f9;
          box-shadow: 0 4px 12px rgba(255, 255, 255, 0.15);
        }
        .saga-product-quadrant.dark-charcoal .btn-pill-secondary {
          background-color: transparent;
          border-color: rgba(255, 255, 255, 0.3);
          color: #ffffff;
        }
        .saga-product-quadrant.dark-charcoal .btn-pill-secondary:hover {
          background-color: rgba(255, 255, 255, 0.05);
          border-color: #ffffff;
        }

        /* Theme Desert Sand overrides */
        .saga-product-quadrant.desert-sand {
          background: linear-gradient(180deg, #fbfaf8 0%, #f4f0e6 100%);
          border-color: rgba(140, 111, 56, 0.15);
        }
        .saga-product-quadrant.desert-sand .quadrant-title {
          color: #0f172a;
        }
        .saga-product-quadrant.desert-sand .quadrant-subtitle {
          color: #475569;
        }
        .saga-product-quadrant.desert-sand .btn-pill-primary {
          background-color: var(--brand-gold);
          color: #ffffff;
        }
        .saga-product-quadrant.desert-sand .btn-pill-primary:hover {
          background-color: var(--brand-gold-hover);
          box-shadow: 0 4px 12px rgba(140, 111, 56, 0.2);
        }
        .saga-product-quadrant.desert-sand .btn-pill-secondary {
          background-color: transparent;
          border-color: var(--brand-gold);
          color: var(--brand-gold);
        }
        .saga-product-quadrant.desert-sand .btn-pill-secondary:hover {
          background-color: rgba(140, 111, 56, 0.05);
        }

        /* Image box and alignment */
        .quadrant-img-box {
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: flex-end;
          margin-top: auto;
          height: 340px;
          overflow: hidden;
          position: relative;
        }

        .quadrant-img {
          max-height: 320px;
          width: auto;
          object-fit: contain;
          filter: drop-shadow(0 12px 24px rgba(0, 0, 0, 0.35));
          transform: scale(var(--img-scale, 1)) translateY(10px);
          transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }

        .saga-product-quadrant:hover .quadrant-img {
          transform: scale(calc(var(--img-scale, 1) * 1.06)) translateY(0px);
          filter: drop-shadow(0 16px 32px rgba(0, 0, 0, 0.45));
        }

        /* Fly-in animations hooked to IntersectionObserver reveal classes */
        .saga-products-section.is-hidden-bottom .saga-product-quadrant.fly-left,
        .saga-products-section.is-hidden-top .saga-product-quadrant.fly-left {
          opacity: 0;
          transform: translateX(-120px);
        }

        .saga-products-section.is-hidden-bottom .saga-product-quadrant.fly-right,
        .saga-products-section.is-hidden-top .saga-product-quadrant.fly-right {
          opacity: 0;
          transform: translateX(120px);
        }

        .saga-products-section.is-visible .saga-product-quadrant {
          opacity: 1;
          transform: translateX(0);
        }

        /* Responsive Apple-style grid details */
        @media (max-width: 960px) {
          .saga-products-grid {
            grid-template-columns: 1fr;
            gap: 16px;
          }
          .saga-product-quadrant {
            min-height: 520px;
            padding: 48px 24px 0 24px;
          }
          .quadrant-title {
            font-size: 1.8rem;
          }
          .quadrant-subtitle {
            font-size: 0.98rem;
            margin-bottom: 20px;
          }
          .quadrant-img-box {
            height: 280px;
          }
          .quadrant-img {
            max-height: 260px;
          }
          .saga-products-section.is-hidden-bottom .saga-product-quadrant.fly-left,
          .saga-products-section.is-hidden-top .saga-product-quadrant.fly-left {
            transform: translateX(-50px);
          }
          .saga-products-section.is-hidden-bottom .saga-product-quadrant.fly-right,
          .saga-products-section.is-hidden-top .saga-product-quadrant.fly-right {
            transform: translateX(50px);
          }
        }

        @media (max-width: 480px) {
          /* Hero Section actions stacking */
          .hero-actions {
            flex-direction: column;
            width: 100%;
            gap: 12px;
          }
          .hero-actions .btn {
            width: 100%;
          }

          /* Recommendation Cards actions stacking */
          .fit-card-actions {
            flex-direction: column;
            width: 100%;
            gap: 8px;
          }
          .fit-card-actions .btn {
            width: 100%;
          }

          /* Apple-style product quadrants actions stacking */
          .quadrant-actions {
            flex-direction: column;
            width: 100%;
            gap: 8px;
          }
          .quadrant-actions .btn-pill {
            width: 100%;
          }

          /* Constrain image boxes inside quadrants to avoid overflow */
          .quadrant-img-box {
            height: 220px;
          }
          .quadrant-img {
            max-height: 200px;
          }

          /* Reduce search lookup card padding on mobile */
          .search-lookup-card {
            padding: 24px 16px !important;
          }
        }

        /* ----------------------------------------------------
           STICKY FEATURES SECTION CSS
           ---------------------------------------------------- */
        .features-sticky-section {
          background-color: #0c120f;
          padding: 120px 0;
          border-bottom: 1px solid rgba(196, 164, 108, 0.08);
          position: relative;
        }

        .features-split-container {
          display: grid;
          grid-template-columns: 0.9fr 1.1fr;
          gap: 64px;
          align-items: flex-start;
        }

        .features-left-sticky {
          position: sticky;
          top: 120px;
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
        }

        .features-main-heading {
          font-family: var(--font-headings);
          font-size: clamp(2rem, 3.5vw, 2.6rem);
          font-weight: 700;
          line-height: 1.25;
          margin-top: 16px;
          margin-bottom: 24px;
          color: #ffffff;
          text-transform: uppercase;
        }

        .features-main-sub {
          font-size: 1.05rem;
          color: #94a3b8;
          line-height: 1.6;
        }

        .features-right-list {
          display: flex;
          flex-direction: column;
          gap: 32px;
        }

        .feature-item-card {
          background: linear-gradient(135deg, rgba(26, 38, 30, 0.4) 0%, rgba(12, 18, 15, 0.8) 100%);
          border: 1px solid rgba(196, 164, 108, 0.08);
          border-radius: 12px;
          padding: 40px;
          display: flex;
          gap: 32px;
          align-items: flex-start;
          transition: border-color 0.3s ease, box-shadow 0.3s ease;
        }

        .feature-item-card:hover {
          border-color: var(--brand-gold);
          box-shadow: 0 10px 30px rgba(0,0,0,0.4), 0 0 15px var(--brand-gold-glow);
        }

        .feature-item-num {
          font-family: var(--font-headings);
          font-size: 1.1rem;
          font-weight: 800;
          color: var(--brand-gold);
          background-color: rgba(140, 111, 56, 0.08);
          border: 1px solid var(--border-gold);
          width: 40px;
          height: 40px;
          border-radius: 50%;
          display: flex;
          align-items: center;
          justify-content: center;
          flex-shrink: 0;
        }

        .feature-item-body {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
        }

        .feature-item-title {
          font-family: var(--font-headings);
          font-size: 1.5rem;
          font-weight: 700;
          color: #ffffff;
          margin-bottom: 12px;
          text-transform: uppercase;
        }

        .feature-item-desc {
          font-size: 0.98rem;
          color: #cbd5e1;
          line-height: 1.6;
        }

        /* ----------------------------------------------------
           STANDARDS SPLIT SECTION CSS
           ---------------------------------------------------- */
        .standards-section-split {
          background-color: #0c120f;
          border-bottom: 1px solid rgba(196, 164, 108, 0.08);
          position: relative;
          width: 100%;
        }

        .standards-split-container {
          display: grid;
          grid-template-columns: 1fr 1fr;
          min-height: 560px;
          width: 100%;
        }

        .standards-image-panel {
          position: relative;
          overflow: hidden;
          width: 100%;
          height: 100%;
          min-height: 400px;
          display: flex;
          align-items: center;
          justify-content: center;
          background-color: #060907;
        }

        .standards-panel-img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          opacity: 0.85;
          filter: drop-shadow(0 20px 40px rgba(0,0,0,0.5));
          transform: scale(0.9);
          transition: transform 0.6s ease;
        }

        .standards-image-panel:hover .standards-panel-img {
          transform: scale(0.95);
        }

        .standards-image-overlay {
          position: absolute;
          inset: 0;
          background: linear-gradient(to right, rgba(12, 18, 15, 0.3) 0%, rgba(12, 18, 15, 0.8) 100%);
        }

        .standards-content-panel {
          padding: 80px 10%;
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          justify-content: center;
          text-align: left;
          background-color: #0c120f;
        }

        .standards-panel-heading {
          font-family: var(--font-headings);
          font-size: clamp(2rem, 3.5vw, 2.8rem);
          line-height: 1.15;
          font-weight: 700;
          margin-top: 16px;
          margin-bottom: 24px;
          text-transform: uppercase;
          color: #ffffff;
          display: flex;
          flex-direction: column;
        }

        .standards-panel-heading span {
          display: block;
        }

        .standards-panel-heading span:nth-child(2) {
          color: var(--brand-gold);
        }

        .standards-panel-desc {
          font-size: 1.05rem;
          line-height: 1.7;
          color: #cbd5e1;
          margin-bottom: 32px;
        }

        /* ----------------------------------------------------
           FAQ SPLIT SECTION CSS
           ---------------------------------------------------- */
        .faq-split-section {
          background-color: #0c120f;
          padding: 120px 0;
          border-bottom: 1px solid rgba(196, 164, 108, 0.08);
          position: relative;
        }

        .faq-split-container {
          display: grid;
          grid-template-columns: 0.9fr 1.1fr;
          gap: 64px;
          align-items: flex-start;
        }

        .faq-left-title {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          text-align: left;
          position: sticky;
          top: 120px;
        }

        .faq-main-heading {
          font-family: var(--font-headings);
          font-size: clamp(2rem, 3.5vw, 2.5rem);
          font-weight: 700;
          line-height: 1.25;
          margin-top: 16px;
          color: #ffffff;
          text-transform: uppercase;
        }

        .faq-right-accordion {
          display: flex;
          flex-direction: column;
          gap: 16px;
          width: 100%;
        }

        .faq-accordion-item {
          border-bottom: 1px solid rgba(255, 255, 255, 0.06);
          padding-bottom: 16px;
          transition: border-color 0.3s ease;
          width: 100%;
        }

        .faq-accordion-item.open {
          border-color: var(--brand-gold);
        }

        .faq-accordion-header {
          background: transparent;
          border: none;
          display: flex;
          justify-content: space-between;
          align-items: center;
          width: 100%;
          text-align: left;
          padding: 16px 0;
          cursor: pointer;
          color: #ffffff;
          font-family: var(--font-headings);
          font-size: 1.15rem;
          font-weight: 600;
          letter-spacing: 0.01em;
          transition: color 0.3s ease;
        }

        .faq-accordion-header:hover {
          color: var(--brand-gold);
        }

        .faq-icon-arrow {
          font-size: 1.2rem;
          color: var(--brand-gold);
          transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .faq-accordion-item.open .faq-icon-arrow {
          transform: rotate(90deg);
        }

        .faq-accordion-content {
          max-height: 0;
          overflow: hidden;
          transition: max-height 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
          opacity: 0;
        }

        .faq-accordion-item.open .faq-accordion-content {
          max-height: 180px;
          opacity: 1;
        }

        .faq-answer {
          font-size: 0.95rem;
          color: #94a3b8;
          line-height: 1.6;
          padding: 8px 0 16px 0;
        }

        /* Responsive adaptations for new sections */
        @media (max-width: 960px) {
          .features-split-container,
          .faq-split-container {
            grid-template-columns: 1fr;
            gap: 40px;
          }
          .features-left-sticky,
          .faq-left-title {
            position: static;
          }
          .standards-split-container {
            grid-template-columns: 1fr;
          }
          .standards-image-panel {
            min-height: 300px;
          }
          .standards-content-panel {
            padding: 48px 24px;
          }
          .flow-content-grid {
            grid-template-columns: 1fr;
            gap: 32px;
            height: auto;
            align-items: flex-start;
            padding: 60px 0;
          }
          .flow-sticky-container {
            position: static !important;
            height: auto !important;
            display: block;
            overflow: visible;
          }
          .flow-steps-stack {
            height: auto;
            overflow: visible;
          }
          .flow-step-panel {
            position: static;
            opacity: 1 !important;
            transform: none !important;
            margin-bottom: 40px;
            pointer-events: auto;
          }
          .flow-track-indicator {
            display: none; /* Hide track sidebar on mobile */
          }
        }