@keyframes sparkle {
        0%, 100% { opacity: 0.3; }
        50% { opacity: 1; }
      }

      @keyframes fadeInDown {
        from {
          opacity: 0;
          transform: translateY(-30px);
        }
        to {
          opacity: 1;
          transform: translateY(0);
        }
      }

      .hero-content {
        animation: fadeInDown 0.8s ease-out;
      }

      .matrix-watermark {
        margin-top: 0;
        font-family: 'Montserrat Alternates', sans-serif;
        font-size: clamp(0.68rem, 1.15vw, 0.8rem);
        font-weight: 500;
        letter-spacing: 0.04em;
        color: rgba(214, 183, 238, 0.58);
        text-transform: none;
        line-height: 1;
        pointer-events: none;
        user-select: none;
      }

      /* Interactive Energy Points Styles */

      /* Text elements should not block clicks */
      text.matrix-value-point {
        pointer-events: none;
      }

      /* Color-specific glow effects */

      /* Sizing only — liquid glass from css/index.css */
      .cosmic-btn-new {
        padding: 1.8em 4.5em;
        font-size: 1.4em;
        letter-spacing: 1px;
        text-transform: uppercase;
        margin: 0.5em;
      }

      /* Three matrices layout */
      .matrices-wrapper {
        display: flex;
        gap: 30px;
        justify-content: center;
        align-items: flex-start;
        flex-wrap: nowrap;
        margin: 30px auto;
        width: 100%;
        max-width: 1600px;
      }

      .matrix-column {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 35px;
      }

      .matrix-column .personal-calculator {
        min-height: auto;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 15px;
      }

      .matrix-column .pento {
        width: 100%;
      }

      .matrices-wrapper .matrix-column:nth-child(2) .pento {
        margin-top: -52px;
      }

      .matrix-column svg {
        width: 100%;
        height: auto;
        display: block;
        overflow: visible;
      }

      #matrix-person1,
      #matrix,
      #matrix-person2 {
        max-width: 1000px;
        min-width: 0;
        height: auto;
        overflow: visible;
      }

      /* Prevent Safari/Chrome antialias artifacts (horizontal lines) from rotating outer rings */
      #main-frame-circle,
      #main-frame-circle-comp,
      #main-frame-circle-p2 {
        animation: none !important;
        filter: none !important;
        transform: none !important;
        vector-effect: non-scaling-stroke;
        shape-rendering: geometricPrecision;
        stroke-linecap: round;
        stroke-linejoin: round;
      }

      /* Responsive design for smaller screens */
      @media (max-width: 1400px) {
        .matrices-wrapper {
          flex-wrap: wrap;
        }
      }

      @media (max-width: 900px) {
        .matrices-wrapper {
          flex-direction: column;
          flex-wrap: nowrap;
          align-items: center;
          gap: 10px;
          max-width: 100%;
        }

        #calculate_compatibility {
          width: 200px;
          height: 50px;
          padding: 5px;
          font-size: 16px;
        }

        .matrix-column {
          flex: 0 0 auto;
          width: min(92vw, 430px);
          gap: 8px;
        }

        .matrices-wrapper .matrix-column:nth-child(2) {
          margin-top: 20px;
          gap: 2px;
        }

        .matrix-column .pento {
          width: 100%;
        }

        .matrix-column svg {
          display: block;
          width: 100%;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .pento {
          margin-top: 0;
        }

        .matrices-wrapper .matrix-column:nth-child(2) #matrix {
          margin: 0;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .personal-calculator {
          min-height: auto;
          margin-top: 8px;
          margin-bottom: 6px;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .gradient-text {
          margin-bottom: 1px !important;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .matrix-watermark {
          margin-top: -3px;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .matrix-header-meta--placeholder {
          display: none;
        }

        .matrices-wrapper .matrix-column:nth-child(3) {
          margin-top: -8px;
        }

        .matrices-wrapper .matrix-column:nth-child(3) .personal-calculator {
          margin-top: 0;
        }
      }
      
      .display-none {
        display: none !important;
      }

      /* Override for matrix headers in compatibility page */
      .matrix-column .personal-calculator {
        flex-direction: column;
        min-height: 75px;
        gap: 0;
        padding: 0;
        justify-content: center;
      }

      .matrix-column .personal-calculator p {
        padding: 0 !important;
        margin: 0 !important;
        line-height: 1.2;
      }

      .matrix-column .personal-calculator .gradient-text {
        font-size: 0.57em !important;
        margin-bottom: 3px !important;
      }

      .matrix-column .personal-calculator > div p {
        font-size: 11px !important;
        color: #a8a8a8 !important;
        margin: 0 !important;
      }

      .matrix-column .personal-calculator .matrix-header-meta {
        text-align: center;
        width: 100%;
      }

      .matrix-column .personal-calculator .matrix-header-meta--placeholder {
        visibility: hidden;
      }

      @media (max-width: 900px) {
        .matrices-wrapper {
          gap: 0;
          margin: 8px auto 1.2em;
        }

        .matrix-column {
          gap: 0;
        }

        .matrix-column .personal-calculator {
          min-height: 50px !important;
          margin: 0 0 4px !important;
        }

        .matrix-column .personal-calculator .gradient-text {
          line-height: 1.05 !important;
          margin-bottom: 1px !important;
        }

        .matrix-column .personal-calculator > div p {
          line-height: 1.15 !important;
        }

        .matrix-column .pento {
          padding: 2.35rem 0 2rem !important;
        }

        .matrices-wrapper .matrix-column:nth-child(2) {
          margin-top: 0;
          gap: 0;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .personal-calculator {
          min-height: 38px !important;
          margin: 0 0 2px !important;
        }

        .matrices-wrapper .matrix-column:nth-child(2) .pento {
          padding-top: 2.15rem !important;
          padding-bottom: 1.8rem !important;
        }

        .matrices-wrapper .matrix-column:nth-child(3) {
          margin-top: 0;
        }
      }

      .sphere-card .sphere-button__hint,
      .sphere-button [style*="color: #d8b8e8"],
      .sphere-card .sphere-content [style*="color: #d8b8e8"],
      .sphere-content [style*="color: #d8b8e8"],
      .sphere-card .sphere-content .content-inner strong,
      .sphere-content .content-inner strong {
        color: #e5d3f3 !important;
      }

      .matrix-overlay-control {
        width: min(560px, 100%);
        margin: 0 auto 1.2em;
        text-align: center;
      }

      .compatibility-controls {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        gap: 1rem;
        width: min(1160px, 100%);
        margin: 0 auto 1.2em;
      }

      .compatibility-controls .matrix-overlay-control,
      .compatibility-controls .compatibility-ancestral-control {
        flex: 1 1 0;
        width: 100%;
        margin: 0;
        text-align: center;
      }

      .life-spheres-section > .purpose-card {
        margin-top: 0.35rem;
        width: fit-content;
        max-width: 100%;
      }

      .matrix-overlay-mobile-slot {
        display: none;
      }

      @media (max-width: 900px) {
        .matrix-overlay-mobile-slot {
          display: block;
          width: min(430px, calc(100vw - 32px));
          margin: 0 auto 0.65em;
          box-sizing: border-box;
        }

        .matrix-overlay-mobile-slot .compatibility-controls {
          display: flex;
          flex-direction: column;
          gap: 0.85rem;
          width: 100%;
          margin: 0 auto;
          box-sizing: border-box;
        }

        .matrix-overlay-mobile-slot .matrix-overlay-control,
        .matrix-overlay-mobile-slot .compatibility-ancestral-control {
          width: 100%;
          max-width: 100%;
          box-sizing: border-box;
        }
      }

      .compatibility-hero-area {
        position: relative;
        overflow: hidden;
        isolation: isolate;
        padding-top: 0.1px;
      }

      .compatibility-crosslink {
        max-width: 640px;
        margin: 1.1em auto 0;
        padding: 0 1em;
        color: rgba(255, 255, 255, 0.82);
        font-family: 'Montserrat Alternates', sans-serif;
        font-size: 0.92em;
        line-height: 1.45;
        text-align: center;
        text-transform: none;
      }

      .compatibility-crosslink a {
        background: linear-gradient(90deg, #ffd6e5, #ffe3c9, #fff1b8, #d9f7c5, #cfe8ff, #e5d4ff, #ffd6e5);
        background-size: 200% 100%;
        -webkit-background-clip: text;
        background-clip: text;
        color: #f6d9ff;
        text-decoration: underline;
        text-decoration-color: rgba(255, 255, 255, 0.45);
        text-underline-offset: 0.18em;
        -webkit-text-fill-color: transparent;
      }

      .compatibility-crosslink a:hover {
        filter: brightness(1.12);
      }

      .compatibility-hero-lead,
      .birthday-container > p:first-of-type {
        max-width: 860px;
        margin-left: auto;
        margin-right: auto;
        padding: 0 1em;
        color: #ffffff;
        font-size: 1.3em;
        line-height: 1.5;
        font-weight: 400;
        text-align: center;
        opacity: 0.9;
        box-sizing: border-box;
      }

      .compatibility-hero-lead {
        margin-top: 0;
        margin-bottom: 0.5em;
      }

      .birthday-container > p:first-of-type {
        width: 100%;
        margin-top: 0;
        margin-bottom: 0;
      }

      .compatibility-hero-decor {
        position: absolute;
        z-index: -1;
        pointer-events: none;
        user-select: none;
        opacity: 0.32;
        filter: drop-shadow(0 0 30px rgba(201, 168, 232, 0.28));
      }

      .compatibility-hero-decor--left {
        width: clamp(220px, 23vw, 420px);
        top: 3.6em;
        left: clamp(-0.8em, 2vw, 4em);
        transform: rotate(-8deg);
      }

      .compatibility-hero-decor--right {
        width: clamp(230px, 24vw, 440px);
        top: 0.5em;
        right: clamp(-0.8em, 2vw, 4em);
        transform: rotate(7deg);
      }

      @media screen and (max-width: 810px) {
        .compatibility-hero-area {
          margin-left: -20px;
          margin-right: -20px;
          padding-left: 20px;
          padding-right: 20px;
        }

        .compatibility-hero-decor {
          opacity: 0.3;
        }

        .compatibility-hero-decor--left {
          width: 170px;
          top: 4.9em;
          left: -34px;
        }

        .compatibility-hero-decor--right {
          width: 180px;
          top: 1.3em;
          right: -38px;
        }

        .compatibility-hero-lead,
        .birthday-container > p:first-of-type {
          font-size: 1.05em;
          line-height: 1.5;
          padding: 0 0.5rem;
        }

        .compatibility-hero-lead {
          margin-bottom: 0.55em;
        }

        .hero-content > p:first-of-type {
          font-size: 2em !important;
          margin-bottom: 0.2em !important;
          margin-top: 0 !important;
        }

        .hero-content > p:nth-of-type(2) {
          font-size: 0.95em !important;
          margin-bottom: 0.6em !important;
          line-height: 1.5 !important;
        }

      }

      