.elementor-23680 .elementor-element.elementor-element-561bd19{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23680 .elementor-element.elementor-element-561bd19:not(.elementor-motion-effects-element-type-background), .elementor-23680 .elementor-element.elementor-element-561bd19 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E3E3E3;}.elementor-23680 .elementor-element.elementor-element-b8acffd{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-23680 .elementor-element.elementor-element-561bd19{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-252138b */#scrollUp {
          display: none !important;
      }

      :root {
          --bg-primary: #f8f8f8;
          --bg-section-alt: #ebebeb;
          --bg-section-alt2: #312f2f;
          --bg-gradient: linear-gradient(180deg, #336797 0%, #99b3cb 100%);
          --bg-card: #ffffff;
          --orange: #f06225;
          --orange-hover: #ff7a3f;
          --orange-glow: rgba(240, 98, 37, 0.15);
          --text-primary: #312f2f;
          --text-secondary: #4a4a4a;
          --text-muted: #6b6b6b;
          --border-subtle: rgba(0, 0, 0, 0.08);
          --max-width: 1200px;
          --section-padding: 30px 0;
      }

      * {
          margin: 0;
          padding: 0;
          box-sizing: border-box;
      }

      body {
          font-family:
              "Lato",
              -apple-system,
              sans-serif;
          background: var(--bg-primary);
          color: var(--text-primary);
          line-height: 1.6;
          -webkit-font-smoothing: antialiased;
          overflow-x: hidden;
      }
      html {
          overflow-x: hidden;
          scrollbar-gutter: stable;
      }

      /* ── HERO ── */
      .hero {
          padding: 120px 0 80px;
          text-align: center;
          position: relative;
          overflow: hidden;
          background: url("https://taranawireless.com/wp-content/uploads/2026/03/Tarana-ILEC-banner-2208x689-px.jpg")
              center center / cover no-repeat;
      }
      .hero::before {
          content: "";
          position: absolute;
          inset: 0;
          background: rgba(0, 0, 0, 0.5);
          pointer-events: none;
      }
      .hero .container {
          position: relative;
          z-index: 1;
      }
      .hero .label {
          display: inline-block;
          font-size: 13px;
          font-weight: 600;
          letter-spacing: 0.15em;
          text-transform: uppercase;
          color: #ffffff;
          margin-bottom: 20px;
      }
      .hero h1 {
          font-family: "Lato", sans-serif;
          font-size: 48px;
          font-weight: 700;
          line-height: 1.05;
          letter-spacing: -0.01em;
          margin-bottom: 20px;
          color: #ffffff;
      }
      .hero .subtitle {
          font-size: 22px;
          color: rgba(255, 255, 255, 0.85);
          font-weight: 300;
          max-width: 600px;
          margin: 0 auto;
      }

      /* ── STATS BANNER ── */
      .stats-banner {
          background: #312f2f;
          border-top: none;
          border-bottom: none;
          padding: 24px 0;
      }
      .stats-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 0;
      }
      .stat-item {
          text-align: center;
          padding: 0 32px;
          position: relative;
      }
      .stat-item:not(:last-child)::after {
          content: "";
          position: absolute;
          right: 0;
          top: 10%;
          height: 80%;
          width: 1px;
          background: rgba(255, 255, 255, 0.15);
      }
      .stat-icon {
          width: 48px;
          height: 48px;
          margin: 0 auto 16px;
          display: flex;
          align-items: center;
          justify-content: center;
      }
      .stat-icon svg {
          width: 40px;
          height: 40px;
          stroke: var(--orange);
          fill: none;
          stroke-width: 1.5;
      }
      .stat-item h3 {
          font-family: "Lato", sans-serif;
          font-size: 22px;
          font-weight: 600;
          margin-bottom: 4px;
          color: #ffffff;
      }
      .stat-item p {
          font-size: 14px;
          color: rgba(255, 255, 255, 0.6);
      }

      /* ── SECTIONS ── */
      .section {
          padding: var(--section-padding);
      }
      .section.alt {
          background: var(--bg-section-alt);
      }
      .section.alt2 {
          background: var(--bg-section-alt2);
      }

      .section-header {
          margin-bottom: 20px;
      }
      .section-header h2 {
          font-family: "Lato", sans-serif;
          font-size: 32px;
          font-weight: 700;
          line-height: 1.1;
          margin-bottom: 16px;
      }
      .section-header .accent-line {
          width: 60px;
          height: 3px;
          background: var(--orange);
          border-radius: 2px;
      }

      .section-body p {
          font-size: 16px;
          line-height: 1.7;
          color: var(--text-secondary);
          max-width: 800px;
          margin-bottom: 24px;
      }
      .section-body ul {
          list-style: none;
          margin: 24px 0;
      }
      .section-body ul li {
          position: relative;
          padding-left: 28px;
          margin-bottom: 12px;
          font-size: 17px;
          color: var(--text-secondary);
      }
      .section-body ul li::before {
          content: "";
          position: absolute;
          left: 0;
          top: 8px;
          width: 10px;
          height: 10px;
          border-right: 2px solid var(--orange);
          border-top: 2px solid var(--orange);
          transform: rotate(45deg);
      }
      .section-body .inline-link {
          color: var(--orange);
          text-decoration: none;
          font-weight: 600;
          transition: color 0.2s;
          border-bottom: 1px solid transparent;
      }
      .section-body .inline-link:hover {
          color: var(--orange-hover);
          border-bottom-color: var(--orange-hover);
      }

      /* ── TWO-COLUMN LAYOUT ── */
      .two-col {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 60px;
          align-items: center;
      }
      .two-col.reverse .col-text {
          order: 2;
      }
      .two-col.reverse .col-visual {
          order: 1;
      }

      .col-visual {
          border-radius: 8px;
          overflow: hidden;
          background: #ebebeb;
          border: 1px solid rgba(0, 0, 0, 0.08);
          aspect-ratio: 16/10;
          display: flex;
          align-items: center;
          justify-content: center;
          position: relative;
      }
      .col-visual .placeholder-label {
          color: var(--text-muted);
          font-size: 14px;
          font-weight: 500;
          letter-spacing: 0.05em;
          text-transform: uppercase;
      }
      .col-visual::before {
          content: "";
          position: absolute;
          inset: 0;
          background: linear-gradient(
              135deg,
              rgba(51, 103, 151, 0.08) 0%,
              transparent 60%
          );
      }

      /* ── SUCCESS STORIES TABLE ── */
      .stories-section {
          padding: var(--section-padding);
          background: var(--bg-section-alt);
      }
      .flex-table-wrapper {
          margin-top: 20px;
          overflow-x: auto;
          -webkit-overflow-scrolling: touch;
          scrollbar-width: thin;
          scrollbar-color: #025287 rgba(0, 0, 0, 0.08);
      }
      .flex-table-wrapper::-webkit-scrollbar {
          height: 8px;
          display: block;
      }
      .flex-table-wrapper::-webkit-scrollbar-track {
          background: rgba(0, 0, 0, 0.08);
          border-radius: 4px;
      }
      .flex-table-wrapper::-webkit-scrollbar-thumb {
          background: #025287;
          border-radius: 4px;
      }
      .flex-table {
          display: flex;
          flex-direction: column;
          min-width: 600px;
      }
      .flex-row {
          display: flex;
          border-bottom: 1px solid rgba(0, 0, 0, 0.08);
      }
      .flex-row:last-child {
          border-bottom: none;
      }
      .flex-header {
          border-bottom: 2px solid #025287;
      }
      .flex-header .flex-cell {
          font-size: 12px;
          font-weight: 600;
          letter-spacing: 0.1em;
          text-transform: uppercase;
          color: var(--text-muted);
          display: flex;
          align-items: center;
      }
      .company-logo {
          max-height: 40px;
          max-width: 140px;
          width: auto;
          object-fit: contain;
      }
      .flex-cell {
          flex: 1;
          padding: 16px 20px;
          font-size: 15px;
          color: var(--text-secondary);
          vertical-align: top;
      }
      .label-cell {
          flex: 0 0 140px;
          font-weight: 700;
          color: var(--text-primary);
      }
      .case-study-link {
          color: #f06225;
          text-decoration: none;
          font-weight: 600;
          border-bottom: 1px solid transparent;
          transition:
              color 0.2s,
              border-bottom-color 0.2s;
      }
      .case-study-link:hover {
          color: var(--orange-hover);
          border-bottom-color: var(--orange-hover);
      }

      @media (max-width: 768px) {
          .flex-table-wrapper {
              position: relative;
          }
          .flex-table {
              min-width: 500px;
          }
          .label-cell {
              position: sticky;
              left: 0;
              background: var(--bg-section-alt);
              z-index: 1;
              flex: 0 0 110px;
              font-size: 13px;
          }
          .flex-cell {
              font-size: 13px;
              padding: 12px 14px;
          }
      }

      /* ── CTA SECTION ── */
      .cta-section {
          padding: var(--section-padding);
          background: var(--bg-primary);
      }
      .cta-grid {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 32px;
      }
      .cta-card {
          background: #ffffff;
          border: 1px solid rgba(0, 0, 0, 0.08);
          border-radius: 8px;
          padding: 48px 40px;
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          transition: border-color 0.3s;
      }
      .cta-card:hover {
          border-color: rgba(240, 98, 37, 0.3);
      }
      .cta-card h3 {
          font-family: "Lato", sans-serif;
          font-size: 28px;
          font-weight: 700;
          margin-bottom: 12px;
      }
      .cta-card p {
          font-size: 16px;
          color: var(--text-secondary);
          margin-bottom: 32px;
          line-height: 1.6;
      }
      .btn {
          display: inline-block;
          text-align: center;
          width: 275px;
          font-size: 16px;
          font-weight: 600;
          text-decoration: none !important;
          fill: #f8f8f8;
          color: #f8f8f8;
          background-color: #025287;
          border-radius: 300px;
          padding: 10px 45px;
          transition-property: background-color;
          cursor: pointer;
      }
      .btn:hover {
          background-color: #03679e;
      }
      .btn-primary {
          background-color: #025287;
          color: #f8f8f8;
      }
      .btn-primary:hover {
          background-color: #03679e;
      }
      .btn-outline {
          background-color: #025287;
          color: #f8f8f8;
          border: none;
      }
      .btn-outline:hover {
          background-color: #03679e;
          color: #f8f8f8;
      }

      /* ── RESPONSIVE ── */
      @media (max-width: 768px) {
          .stats-grid {
              grid-template-columns: 1fr;
              gap: 32px;
          }
          .stat-item:not(:last-child)::after {
              display: none;
          }
          .two-col {
              grid-template-columns: 1fr;
              gap: 40px;
          }
          .two-col.reverse .col-text {
              order: 1;
          }
          .two-col.reverse .col-visual {
              order: 2;
          }
          .cta-grid {
              grid-template-columns: 1fr;
          }
          .section {
              padding: 60px 0;
          }
      }

      :root {
          --tw-wisp-bg-primary: #f8f8f8;
          --tw-wisp-bg-section-alt: #ebebeb;
          --tw-wisp-orange: #f06225;
          --tw-wisp-orange-hover: #ff7a3f;
          --tw-wisp-text-primary: #312f2f;
          --tw-wisp-text-secondary: #4a4a4a;
          --tw-wisp-text-muted: #6b6b6b;
          --tw-wisp-max-width: 1200px;
          --tw-wisp-section-padding: 30px 0;
      }

      * {
          margin: 0;
          padding: 0;
          box-sizing: border-box;
      }

      body {
          font-family:
              "Lato",
              -apple-system,
              sans-serif;
          background: var(--tw-wisp-bg-primary);
          color: var(--tw-wisp-text-primary);
          line-height: 1.6;
          -webkit-font-smoothing: antialiased;
      }

      /* ── POLISH: smooth scrolling for in-page anchors ── */
      html {
          scroll-behavior: smooth;
      }

      /* ── POLISH: focus-visible ring (modern brand-orange glow) ── */
      .tw-wisp-section a:focus-visible,
      .tw-wisp-stories-section a:focus-visible,
      .tw-wisp-cta-section a:focus-visible,
      .tw-wisp-cta-card a:focus-visible,
      .tw-wisp-story-card:focus-visible,
      .tw-wisp-device-cta:focus-visible,
      .tw-wisp-modal-cta:focus-visible,
      .tw-wisp-modal-close:focus-visible {
          outline: none;
          box-shadow: 0 0 0 3px rgba(240, 98, 37, 0.35);
      }

      /* ── POLISH: scroll-triggered reveal (used via .tw-wisp-reveal + .is-visible) ── */
      .tw-wisp-reveal {
          opacity: 0;
          transform: translateY(24px);
          transition:
              opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1),
              transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
          will-change: opacity, transform;
      }
      .tw-wisp-reveal.is-visible {
          opacity: 1;
          transform: translateY(0);
      }
      /* Stats stagger: each item delayed slightly when its parent is visible */
      .tw-wisp-js .tw-wisp-stats-banner.is-visible .tw-wisp-stat-item {
          animation: twWispStatRise 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) both;
      }
      .tw-wisp-js .tw-wisp-stats-banner.is-visible .tw-wisp-stat-item:nth-child(1) {
          animation-delay: 0.05s;
      }
      .tw-wisp-js .tw-wisp-stats-banner.is-visible .tw-wisp-stat-item:nth-child(2) {
          animation-delay: 0.18s;
      }
      .tw-wisp-js .tw-wisp-stats-banner.is-visible .tw-wisp-stat-item:nth-child(3) {
          animation-delay: 0.31s;
      }
      .tw-wisp-js .tw-wisp-stats-banner .tw-wisp-stat-item {
          opacity: 0;
      }
      .tw-wisp-js .tw-wisp-stats-banner.is-visible .tw-wisp-stat-item {
          opacity: 1;
      }
      @keyframes twWispStatRise {
          from {
              opacity: 0;
              transform: translateY(16px);
          }
          to {
              opacity: 1;
              transform: translateY(0);
          }
      }

      /* ── POLISH: hero subtle Ken Burns ── */
      .tw-wisp-hero {
          background-size: cover;
          background-position: center;
          animation: twWispKenBurns 30s ease-in-out infinite alternate;
      }
      @keyframes twWispKenBurns {
          from {
              background-size: 100% auto;
              background-position: center 50%;
          }
          to {
              background-size: 106% auto;
              background-position: center 48%;
          }
      }

      /* ── POLISH: stats banner subtle radial depth ── */
      .tw-wisp-stats-banner {
          background-image: radial-gradient(
              ellipse at center,
              rgba(255, 255, 255, 0.04) 0%,
              rgba(0, 0, 0, 0) 60%
          );
      }

      /* ── POLISH: reduced-motion respects user preference ── */
      @media (prefers-reduced-motion: reduce) {
          html {
              scroll-behavior: auto;
          }
          *,
          *::before,
          *::after {
              animation-duration: 0.001ms !important;
              animation-iteration-count: 1 !important;
              transition-duration: 0.001ms !important;
          }
          .tw-wisp-reveal {
              opacity: 1;
              transform: none;
          }
          .tw-wisp-stats-banner .tw-wisp-stat-item {
              opacity: 1;
          }
          .tw-wisp-hero {
              animation: none;
          }
      }

      /* ── CONTAINER ── */
      .tw-wisp-container {
          max-width: var(--tw-wisp-max-width);
          margin: 0 auto;
          padding: 0 40px;
      }

      /* ── HERO ── */
      .tw-wisp-hero {
          padding: 80px 10px;
          text-align: center;
          position: relative;
          overflow: hidden;
          background: url("https://taranawireless.com/wp-content/uploads/2026/05/ilec-campaign-hero-scaled.webp")
              center center / cover no-repeat;
      }
      .tw-wisp-hero .tw-wisp-container {
          position: relative;
          z-index: 1;
          display: inline-block;
          background: rgba(0, 0, 0, 0.5);
          padding: 40px 60px;
          border-radius: 8px;
      }
      .tw-wisp-hero h1 {
          font-family: "Lato", sans-serif;
          font-size: 48px;
          font-weight: 700;
          line-height: 1.05;
          letter-spacing: -0.01em;
          margin-bottom: 20px;
          color: #ffffff;
      }
      .tw-wisp-hero .tw-wisp-subtitle {
          font-size: 22px;
          color: rgba(255, 255, 255, 0.85);
          font-weight: 300;
          max-width: 600px;
          margin: 0 auto;
      }

      /* ── STATS BANNER ── */
      .tw-wisp-stats-banner {
          background: #312f2f;
          border-top: none;
          border-bottom: none;
          padding: 24px 0;
      }
      .tw-wisp-stats-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 0;
      }
      .tw-wisp-stat-item {
          text-align: center;
          padding: 0 32px;
          position: relative;
      }
      .tw-wisp-stat-item:not(:last-child)::after {
          content: "";
          position: absolute;
          right: 0;
          top: 10%;
          height: 80%;
          width: 1px;
          background: rgba(255, 255, 255, 0.15);
      }
      .tw-wisp-stat-icon {
          width: 48px;
          height: 48px;
          margin: 0 auto 16px;
          display: flex;
          align-items: center;
          justify-content: center;
      }
      .tw-wisp-stat-icon svg {
          width: 40px;
          height: 40px;
          stroke: var(--tw-wisp-orange);
          fill: none;
          stroke-width: 1.5;
      }
      .tw-wisp-stat-item h3 {
          font-family: "Lato", sans-serif;
          font-size: 22px;
          font-weight: 700;
          letter-spacing: 0.08em;
          margin-bottom: 8px;
          color: #ffffff;
      }
      .tw-wisp-stat-item p {
          font-size: 14px;
          line-height: 1.5;
          color: rgba(255, 255, 255, 0.7);
          max-width: 320px;
          margin: 0 auto;
      }

      /* ── SECTIONS ── */
      .tw-wisp-section {
          padding: var(--tw-wisp-section-padding);
          background-color: var(--tw-wisp-bg-primary);
      }
      .tw-wisp-section.tw-wisp-alt {
          background-color: var(--tw-wisp-bg-section-alt);
      }

      .tw-wisp-section-header {
          margin-bottom: 20px;
      }
      .tw-wisp-section-header h2 {
          font-family: "Lato", sans-serif;
          font-size: 32px;
          font-weight: 700;
          line-height: 1.1;
          margin-bottom: 16px;
      }
      .tw-wisp-section-header .tw-wisp-accent-line {
          width: 60px;
          height: 3px;
          background: var(--tw-wisp-orange);
          border-radius: 2px;
      }

      .tw-wisp-section-body p {
          font-size: 16px;
          line-height: 1.7;
          color: var(--tw-wisp-text-secondary);
          max-width: 900px;
          margin-bottom: 24px;
      }
      .tw-wisp-section-body ul {
          list-style: none;
          margin: 24px 0;
      }
      .tw-wisp-section-body ul li {
          position: relative;
          padding-left: 28px;
          margin-bottom: 12px;
          font-size: 17px;
          color: var(--tw-wisp-text-secondary);
      }
      .tw-wisp-section-body ul li::before {
          content: "";
          position: absolute;
          left: 0;
          top: 8px;
          width: 10px;
          height: 10px;
          border-right: 2px solid var(--tw-wisp-orange);
          border-top: 2px solid var(--tw-wisp-orange);
          transform: rotate(45deg);
      }
      .tw-wisp-section-body .tw-wisp-inline-link {
          color: var(--tw-wisp-orange) !important;
          text-decoration: none !important;
          font-weight: 600;
          transition:
              color 0.2s ease,
              border-bottom-color 0.2s ease !important;
          border-bottom: 1px solid transparent !important;
      }
      .tw-wisp-section-body .tw-wisp-inline-link:hover {
          color: var(--tw-wisp-orange-hover) !important;
          border-bottom-color: var(--tw-wisp-orange-hover) !important;
      }
      .tw-wisp-section-body .tw-wisp-caption {
          font-style: italic;
          color: var(--tw-wisp-text-secondary);
          font-size: 15px;
          max-width: 800px;
          margin: 16px auto 0;
          line-height: 1.6;
      }
      .tw-wisp-section-body .tw-wisp-subhead {
          font-family: "Lato", sans-serif;
          font-size: 20px;
          font-weight: 700;
          color: var(--tw-wisp-text-primary);
          text-align: center;
          margin: 32px 0 12px;
          line-height: 1.3;
      }
      .tw-wisp-section-body .tw-wisp-subhead:first-of-type {
      }

      /* ── SOLUTION SECTION: unified 24px vertical rhythm ── */
      .tw-wisp-solution-section .tw-wisp-section-header {
          margin-bottom: 24px;
      }
      .tw-wisp-solution-section .tw-wisp-section-body {
          gap: 24px;
      }
      .tw-wisp-solution-section .tw-wisp-section-body > * {
          margin-top: 0;
          margin-bottom: 0;
      }

      /* ── DEVICE CTA GRID ── */
      .tw-wisp-device-grid {
          display: grid;
          grid-template-columns: repeat(5, 1fr);
          gap: 16px;
          width: 100%;
      }
      .tw-wisp-device-cta {
          display: flex;
          align-items: center;
          justify-content: center;
          background: #eaf1f7;
          border: 1px solid rgba(2, 82, 135, 0.18);
          border-radius: 8px;
          padding: 20px 16px;
          font-family: "Lato", sans-serif;
          font-size: 18px;
          font-weight: 700;
          color: #025287;
          text-decoration: none;
          cursor: pointer;
          transition:
              border-color 0.25s ease,
              transform 0.25s ease,
              box-shadow 0.25s ease,
              color 0.25s ease,
              background-color 0.25s ease !important;
          position: relative;
          overflow: hidden;
      }
      .tw-wisp-device-cta::after {
          content: "";
          position: absolute;
          left: 0;
          bottom: 0;
          width: 100%;
          height: 3px;
          background: var(--tw-wisp-orange);
          transform: scaleX(0) !important;
          transform-origin: center;
          transition: transform 0.3s ease !important;
      }
      .tw-wisp-device-cta:hover,
      .tw-wisp-device-cta:focus-visible {
          background: #ffffff !important;
          border-color: rgba(240, 98, 37, 0.4) !important;
          transform: translateY(-3px) !important;
          box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1) !important;
          color: var(--tw-wisp-orange) !important;
          outline: none !important;
      }
      .tw-wisp-device-cta:hover::after,
      .tw-wisp-device-cta:focus-visible::after {
          transform: scaleX(1) !important;
      }
      .tw-wisp-device-cta:active {
          transform: translateY(-1px) !important;
      }

      @media (max-width: 900px) {
          .tw-wisp-device-grid {
              grid-template-columns: repeat(3, 1fr);
          }
      }
      @media (max-width: 540px) {
          .tw-wisp-device-grid {
              grid-template-columns: 1fr;
          }
      }

      /* ── EXPANDABLE BULLETS (Option A: click-to-expand) ── */
      .tw-wisp-section-body ul.tw-wisp-expand-list {
          margin: 24px 0;
      }
      .tw-wisp-section-body ul.tw-wisp-expand-list li {
          padding-left: 0;
          margin-bottom: 8px;
      }
      .tw-wisp-section-body ul.tw-wisp-expand-list li::before {
          display: none;
      }
      .tw-wisp-expand-trigger {
          display: flex;
          align-items: center;
          width: 100%;
          padding: 12px 14px 12px 36px;
          background: transparent;
          border: 1px solid transparent;
          border-radius: 6px;
          font-family: "Lato", sans-serif;
          font-size: 17px;
          color: var(--tw-wisp-text-secondary);
          text-align: left;
          cursor: pointer;
          position: relative;
          transition:
              background-color 0.2s ease,
              border-color 0.2s ease,
              color 0.2s ease;
      }
      .tw-wisp-expand-trigger::before {
          content: "";
          position: absolute;
          left: 14px;
          top: 50%;
          width: 10px;
          height: 10px;
          border-right: 2px solid var(--tw-wisp-orange);
          border-top: 2px solid var(--tw-wisp-orange);
          transform: translateY(-50%) rotate(45deg);
      }
      .tw-wisp-expand-trigger .tw-wisp-expand-icon {
          margin-left: auto;
          flex-shrink: 0;
          width: 24px;
          height: 24px;
          border-radius: 50%;
          background: rgba(240, 98, 37, 0.12);
          color: var(--tw-wisp-orange);
          display: flex;
          align-items: center;
          justify-content: center;
          font-size: 18px;
          font-weight: 700;
          line-height: 1;
          transition:
              transform 0.3s ease,
              background-color 0.2s ease;
      }
      .tw-wisp-expand-trigger[aria-expanded="true"] .tw-wisp-expand-icon {
          transform: rotate(45deg);
          background: var(--tw-wisp-orange);
          color: #ffffff;
      }
      .tw-wisp-expand-trigger:hover,
      .tw-wisp-expand-trigger:focus-visible {
          background-color: rgba(240, 98, 37, 0.04) !important;
          border-color: rgba(240, 98, 37, 0.18) !important;
          color: var(--tw-wisp-text-primary) !important;
          outline: none !important;
      }
      .tw-wisp-expand-trigger:hover .tw-wisp-expand-icon,
      .tw-wisp-expand-trigger:focus-visible .tw-wisp-expand-icon {
          background: rgba(240, 98, 37, 0.2) !important;
      }
      .tw-wisp-expand-panel {
          display: grid;
          grid-template-rows: 0fr;
          transition: grid-template-rows 0.3s ease;
      }
      .tw-wisp-expand-panel[data-open="true"] {
          grid-template-rows: 1fr;
      }
      .tw-wisp-expand-panel-inner {
          overflow: hidden;
          padding-left: 36px;
          padding-right: 14px;
      }
      .tw-wisp-expand-panel-inner p {
          font-size: 15px;
          line-height: 1.6;
          color: var(--tw-wisp-text-secondary);
          margin: 8px 0 12px;
          max-width: none;
      }

      /* ── DEVICE MODAL ── */
      .tw-wisp-modal {
          position: fixed;
          inset: 0;
          z-index: 9999;
          display: flex;
          align-items: center;
          justify-content: center;
          padding: 24px;
          background: rgba(15, 22, 30, 0.45);
          -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
          opacity: 0;
          visibility: hidden;
          transition:
              opacity 0.2s ease,
              visibility 0.2s ease;
      }
      .tw-wisp-modal.is-open {
          opacity: 1;
          visibility: visible;
      }
      .tw-wisp-modal-panel {
          background: #ffffff;
          border-radius: 12px;
          max-width: 560px;
          width: 100%;
          max-height: 85vh;
          overflow-y: auto;
          padding: 40px 40px 32px;
          position: relative;
          box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25);
          transform: scale(0.96);
          transition: transform 0.2s ease;
      }
      .tw-wisp-modal.is-open .tw-wisp-modal-panel {
          transform: scale(1);
      }
      .tw-wisp-modal-close {
          position: absolute;
          top: 12px;
          right: 12px;
          width: 36px;
          height: 36px;
          border: none;
          background: transparent;
          border-radius: 50%;
          cursor: pointer;
          display: flex;
          align-items: center;
          justify-content: center;
          color: var(--tw-wisp-text-muted);
          transition:
              background-color 0.2s ease,
              color 0.2s ease;
      }
      .tw-wisp-modal-close:hover,
      .tw-wisp-modal-close:focus-visible {
          background: rgba(0, 0, 0, 0.06) !important;
          color: var(--tw-wisp-orange) !important;
          outline: none !important;
      }
      .tw-wisp-modal-close svg {
          width: 18px;
          height: 18px;
      }
      .tw-wisp-modal-panel h3 {
          font-family: "Lato", sans-serif;
          font-size: 26px;
          font-weight: 700;
          color: var(--tw-wisp-text-primary);
          margin-bottom: 8px;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-titlerow {
          display: flex;
          align-items: baseline;
          flex-wrap: wrap;
          gap: 12px;
          margin-bottom: 16px;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-titlerow h3 {
          margin-bottom: 0;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-titlerow .tw-wisp-modal-intro {
          position: relative;
          margin: 0;
          padding-left: 13px;
          font-size: 16px;
          font-weight: 600;
          color: var(--tw-wisp-text-primary);
          line-height: 1.4;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-titlerow .tw-wisp-modal-intro::before {
          content: "";
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          width: 1px;
          height: 1.05em;
          background: var(--tw-wisp-orange);
      }
      @media (max-width: 540px) {
          .tw-wisp-modal-panel .tw-wisp-modal-titlerow {
              flex-direction: column;
              gap: 4px;
          }
          .tw-wisp-modal-panel .tw-wisp-modal-titlerow .tw-wisp-modal-intro {
              padding-left: 0;
          }
          .tw-wisp-modal-panel .tw-wisp-modal-titlerow .tw-wisp-modal-intro::before {
              display: none;
          }
      }
      .tw-wisp-modal-panel .tw-wisp-modal-eyebrow {
          display: inline-block;
          font-size: 12px;
          font-weight: 700;
          letter-spacing: 0.12em;
          text-transform: uppercase;
          color: var(--tw-wisp-orange);
          margin-bottom: 8px;
      }
      .tw-wisp-modal-panel p {
          font-size: 15px;
          line-height: 1.6;
          color: var(--tw-wisp-text-secondary);
          margin: 0 0 16px;
          text-align: left;
      }
      .tw-wisp-modal-panel p:last-child {
          margin-bottom: 0;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-intro {
          font-size: 16px;
          color: var(--tw-wisp-text-primary);
          font-weight: 600;
          margin: 0 0 16px;
      }
      .tw-wisp-modal-panel ul {
          list-style: none;
          margin: 0 0 24px;
          padding: 0;
          text-align: left;
      }
      .tw-wisp-modal-panel ul li {
          position: relative;
          padding-left: 22px;
          margin-bottom: 10px;
          font-size: 15px;
          line-height: 1.6;
          color: var(--tw-wisp-text-secondary);
      }
      .tw-wisp-modal-panel ul li:last-child {
          margin-bottom: 0;
      }
      .tw-wisp-modal-panel ul li::before {
          content: "";
          position: absolute;
          left: 4px;
          top: 9px;
          width: 7px;
          height: 7px;
          background: var(--tw-wisp-orange);
          border-radius: 50%;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-cta {
          display: inline-block;
          margin-top: 8px;
          padding: 10px 32px;
          background: #025287;
          color: #f8f8f8;
          border-radius: 300px;
          font-size: 15px;
          font-weight: 600;
          text-decoration: none;
          transition: background-color 0.2s ease;
      }
      #tw-wisp-modal-body {
          text-align: center;
      }
      #tw-wisp-modal-body > *:not(.tw-wisp-modal-cta) {
          text-align: left;
      }
      .tw-wisp-modal-panel .tw-wisp-modal-cta:hover,
      .tw-wisp-modal-panel .tw-wisp-modal-cta:focus-visible {
          background: #f06225 !important;
          color: #f8f8f8 !important;
          outline: none !important;
      }
      html.tw-wisp-modal-open,
      body.tw-wisp-modal-open {
          overflow: hidden;
      }
      /* Fallback for browsers without scrollbar-gutter support */
      @supports not (scrollbar-gutter: stable) {
          html.tw-wisp-modal-open {
              padding-right: var(--tw-wisp-scrollbar-gutter, 0px);
          }
      }
      body.tw-wisp-modal-open .tw-wisp-sticky-cta {
          visibility: hidden;
      }

      @media (max-width: 540px) {
          .tw-wisp-modal-panel {
              padding: 32px 24px 24px;
          }
          .tw-wisp-modal-panel h3 {
              font-size: 22px;
          }
      }

      /* ── STICKY CTA (bottom-right) ── */
      .tw-wisp-sticky-cta {
          position: fixed;
          right: 24px;
          bottom: 24px;
          z-index: 9000;
          display: inline-flex;
          align-items: center;
          gap: 10px;
          max-width: calc(100vw - 32px);
          padding: 14px 24px;
          background-color: #025287;
          color: #f8f8f8;
          font-family: "Lato", sans-serif;
          font-size: 15px;
          font-weight: 700;
          letter-spacing: 0.02em;
          line-height: 1;
          white-space: nowrap;
          border: none;
          border-radius: 300px;
          box-shadow:
              0 8px 24px rgba(0, 0, 0, 0.18),
              0 2px 6px rgba(0, 0, 0, 0.12);
          cursor: pointer;
          text-decoration: none;
          opacity: 0;
          visibility: hidden;
          pointer-events: none;
          transform: translateY(12px);
          transition:
              opacity 0.3s ease,
              transform 0.3s ease,
              visibility 0.3s ease,
              background-color 0.2s ease,
              box-shadow 0.2s ease;
      }
      .tw-wisp-sticky-cta.is-visible {
          opacity: 1;
          visibility: visible;
          pointer-events: auto;
          transform: translateY(0);
      }
      .tw-wisp-sticky-cta:hover,
      .tw-wisp-sticky-cta:focus-visible {
          background-color: #f06225 !important;
          box-shadow:
              0 12px 32px rgba(240, 98, 37, 0.28),
              0 2px 6px rgba(0, 0, 0, 0.12) !important;
          outline: none !important;
      }
      .tw-wisp-sticky-cta svg {
          width: 16px;
          height: 16px;
          flex-shrink: 0;
      }
      .tw-wisp-sticky-cta span {
          overflow: hidden;
          text-overflow: ellipsis;
      }
      @media (max-width: 540px) {
          .tw-wisp-sticky-cta {
              right: 16px;
              bottom: 16px;
              padding: 12px 18px;
              font-size: 14px;
          }
      }
      @media (max-width: 380px) {
          .tw-wisp-sticky-cta {
              padding: 14px;
              gap: 0;
              width: 52px;
              height: 52px;
              justify-content: center;
          }
          .tw-wisp-sticky-cta span {
              position: absolute;
              width: 1px;
              height: 1px;
              overflow: hidden;
              clip: rect(0 0 0 0);
              white-space: nowrap;
          }
          .tw-wisp-sticky-cta svg {
              width: 20px;
              height: 20px;
          }
      }

      /* ── IFRAME MODAL (wider panel for forms) ── */
      .tw-wisp-modal--iframe .tw-wisp-modal-panel {
          max-width: 640px;
          padding: 48px 0 0;
          overflow: hidden;
      }
      .tw-wisp-modal--iframe .tw-wisp-modal-panel h3 {
          padding: 0 40px 16px;
          margin-bottom: 0;
      }
      /* Native HubSpot embed (was a fixed-height iframe). The embed is variable-height,
         so grow to a cap and scroll instead of locking to one height. Detailed field/
         button branding is a separate parity pass (see journal step 7). */
      .tw-wisp-iframe-wrap {
          width: 100%;
          max-height: 70vh;
          min-height: 480px;
          overflow-y: auto;
          padding: 8px 40px 40px;
      }
      .tw-wisp-iframe-wrap #tw-wisp-form-target {
          width: 100%;
      }
      @media (max-width: 540px) {
          .tw-wisp-modal--iframe .tw-wisp-modal-panel {
              padding: 32px 0 0;
          }
          .tw-wisp-modal--iframe .tw-wisp-modal-panel h3 {
              padding: 0 24px 12px;
              font-size: 22px;
          }
          .tw-wisp-iframe-wrap {
              max-height: 65vh;
              min-height: 400px;
              padding: 8px 24px 32px;
          }
      }

      /* ── TWO-COLUMN LAYOUT ── */
      .tw-wisp-two-col {
          display: grid;
          grid-template-columns: 1fr 1fr;
          gap: 60px;
          align-items: center;
      }
      .tw-wisp-two-col.tw-wisp-reverse .tw-wisp-col-text {
          order: 2;
      }
      .tw-wisp-two-col.tw-wisp-reverse .tw-wisp-col-visual {
          order: 1;
      }

      .tw-wisp-col-visual {
          border-radius: 8px;
          overflow: hidden;
          background: #ebebeb;
          border: 1px solid rgba(0, 0, 0, 0.08);
          aspect-ratio: 16/10;
          display: flex;
          align-items: center;
          justify-content: center;
          position: relative;
      }
      .tw-wisp-col-visual::before {
          content: "";
          position: absolute;
          inset: 0;
          background: linear-gradient(
              135deg,
              rgba(51, 103, 151, 0.08) 0%,
              transparent 60%
          );
          pointer-events: none;
          z-index: 1;
      }

      /* ── PLAN YOUR TARANA NETWORK: side-by-side screenshots ── */
      .tw-wisp-plan-images {
          display: flex;
          gap: 24px;
          justify-content: center;
          align-items: flex-start;
          flex-wrap: wrap;
          width: 100%;
          margin-bottom: 24px;
      }
      .tw-wisp-plan-images img {
          flex: 1 1 0;
          min-width: 280px;
          max-width: 460px;
          width: 100%;
          aspect-ratio: 16 / 10;
          height: auto;
          object-fit: cover;
          object-position: center top;
          border-radius: 8px;
          border: 1px solid rgba(0, 0, 0, 0.08);
          display: block;
          cursor: zoom-in;
      }
      @media (max-width: 640px) {
          .tw-wisp-plan-images {
              flex-direction: column;
              align-items: center;
          }
          .tw-wisp-plan-images img {
              max-width: 100%;
          }
      }

      /* ── IMAGE LIGHTBOX (click a plan screenshot to enlarge) ── */
      .tw-wisp-lightbox {
          position: fixed;
          inset: 0;
          z-index: 10000;
          display: flex;
          align-items: center;
          justify-content: center;
          padding: 40px;
          background: rgba(15, 22, 30, 0.8);
          -webkit-backdrop-filter: blur(8px);
          backdrop-filter: blur(8px);
          opacity: 0;
          visibility: hidden;
          transition:
              opacity 0.2s ease,
              visibility 0.2s ease;
      }
      .tw-wisp-lightbox.is-open {
          opacity: 1;
          visibility: visible;
      }
      .tw-wisp-lightbox-img {
          max-width: 92vw;
          max-height: 88vh;
          width: auto;
          height: auto;
          object-fit: contain;
          border-radius: 8px;
          box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4);
          transform: scale(0.96);
          transition: transform 0.2s ease;
          cursor: default;
      }
      .tw-wisp-lightbox.is-open .tw-wisp-lightbox-img {
          transform: scale(1);
      }
      .tw-wisp-lightbox-close {
          position: absolute;
          top: 20px;
          right: 24px;
          width: 44px;
          height: 44px;
          border: none;
          background: rgba(255, 255, 255, 0.12);
          border-radius: 50%;
          cursor: pointer;
          display: flex;
          align-items: center;
          justify-content: center;
          color: #ffffff;
          transition: background-color 0.2s ease;
      }
      .tw-wisp-lightbox-close:hover,
      .tw-wisp-lightbox-close:focus-visible {
          background: rgba(255, 255, 255, 0.25);
          outline: none;
      }
      .tw-wisp-lightbox-close svg {
          width: 22px;
          height: 22px;
      }
      @media (max-width: 540px) {
          .tw-wisp-lightbox {
              padding: 16px;
          }
          .tw-wisp-lightbox-close {
              top: 12px;
              right: 12px;
          }
      }

      /* ── NETWORK ADVANTAGES CAROUSEL ── */
      .tw-wisp-carousel-section {
          padding: 0;
          background: #fff !important;
      }
      .tw-wisp-carousel {
          position: relative;
          outline: none;
      }
      /* No-JS / pre-init fallback: each slide renders as a normal stacked block
           (full content visible). Controls stay hidden until JS upgrades it. */
      .tw-wisp-carousel-slide {
          padding: var(--tw-wisp-section-padding);
          background-color: #fff;
      }
      .tw-wisp-carousel-slide.tw-wisp-alt {
          background-color: #fff;
      }
      .tw-wisp-carousel-arrow,
      .tw-wisp-carousel-dots {
          display: none;
      }

      /* Enhanced state — applied by JS via the --ready class. */
      .tw-wisp-carousel--ready .tw-wisp-carousel-viewport {
          overflow: hidden;
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-track {
          display: flex;
          align-items: stretch;
          transition: transform 0.45s cubic-bezier(0.22, 0.61, 0.36, 1);
          will-change: transform;
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-slide {
          flex: 0 0 100%;
          min-width: 100%;
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-arrow {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          z-index: 5;
          display: flex;
          align-items: center;
          justify-content: center;
          padding: 2px;
          border: none;
          background: none;
          color: var(--tw-wisp-orange);
          cursor: pointer;
          transition:
              color 0.2s ease,
              opacity 0.2s ease,
              transform 0.25s ease;
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-prev {
          left: max(2px, calc((100% - 1200px) / 2 - 24px));
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-next {
          right: max(2px, calc((100% - 1200px) / 2 - 24px));
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-arrow:hover {
          color: var(--tw-wisp-orange-hover);
      }
      .tw-wisp-carousel--ready .tw-wisp-carousel-arrow:focus-visible {
          outline: 2px solid var(--tw-wisp-orange);
          outline-offset: 2px;
      }
      .tw-wisp-carousel-arrow svg {
          width: 36px;
          height: 36px;
      }

      /* On section hover, nudge the arrows outward to draw the eye to the controls. */
      .tw-wisp-carousel-section:hover
          .tw-wisp-carousel--ready
          .tw-wisp-carousel-prev {
          transform: translateY(-50%) translateX(-5px) scale(1.08);
      }
      .tw-wisp-carousel-section:hover
          .tw-wisp-carousel--ready
          .tw-wisp-carousel-next {
          transform: translateY(-50%) translateX(5px) scale(1.08);
      }

      .tw-wisp-carousel--ready .tw-wisp-carousel-dots {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 10px;
          padding: 18px 0;
          background-color: #fff;
      }
      .tw-wisp-carousel-dot {
          width: 10px;
          height: 10px;
          padding: 0;
          border: none;
          border-radius: 50%;
          background: rgba(0, 0, 0, 0.18);
          cursor: pointer;
          transition:
              background-color 0.2s ease,
              transform 0.2s ease;
      }
      .tw-wisp-carousel-dot:hover,
      .tw-wisp-carousel-dot:focus-visible {
          background: rgba(0, 0, 0, 0.35);
          outline: none;
      }
      .tw-wisp-carousel-dot.is-active {
          background: var(--tw-wisp-orange);
          transform: scale(1.25);
      }
      @media (max-width: 768px) {
          .tw-wisp-carousel--ready .tw-wisp-carousel-arrow {
              display: none;
          }
      }
      @media (max-width: 540px) {
          .tw-wisp-carousel-arrow svg {
              width: 28px;
              height: 28px;
          }
      }
      @media (prefers-reduced-motion: reduce) {
          .tw-wisp-carousel--ready .tw-wisp-carousel-track {
              transition: none;
          }
          .tw-wisp-carousel--ready .tw-wisp-carousel-arrow {
              transition:
                  color 0.2s ease,
                  opacity 0.2s ease;
          }
          .tw-wisp-carousel-section:hover
              .tw-wisp-carousel--ready
              .tw-wisp-carousel-prev,
          .tw-wisp-carousel-section:hover
              .tw-wisp-carousel--ready
              .tw-wisp-carousel-next {
              transform: translateY(-50%);
          }
      }

      /* ── INFOGRAPHIC PLACEHOLDER ── */
      .tw-wisp-infographic {
          background: #ffffff;
          border: 2px dashed #c4c4c4;
          border-radius: 8px;
          padding: 100px 24px;
          margin: 24px auto 0;
          text-align: center;
          color: var(--tw-wisp-text-muted);
          font-size: 18px;
          font-style: italic;
          max-width: 900px;
          width: 100%;
      }
      .tw-wisp-infographic-img {
          display: block;
          width: 100%;
          max-width: 900px;
          height: auto;
          margin: 24px auto 0;
      }

      /* ── SUCCESS STORIES TABLE ── */
      .tw-wisp-stories-section {
          padding: var(--tw-wisp-section-padding);
          background: var(--tw-wisp-bg-primary);
      }
      .tw-wisp-flex-table-wrapper {
          margin-top: 20px;
          overflow-x: auto;
          -webkit-overflow-scrolling: touch;
          scrollbar-width: thin;
          scrollbar-color: #025287 rgba(0, 0, 0, 0.08);
      }
      .tw-wisp-flex-table-wrapper::-webkit-scrollbar {
          height: 8px;
          display: block;
      }
      .tw-wisp-flex-table-wrapper::-webkit-scrollbar-track {
          background: rgba(0, 0, 0, 0.08);
          border-radius: 4px;
      }
      .tw-wisp-flex-table-wrapper::-webkit-scrollbar-thumb {
          background: #025287;
          border-radius: 4px;
      }
      .tw-wisp-flex-table {
          display: flex;
          flex-direction: column;
          min-width: 600px;
      }
      .tw-wisp-flex-row {
          display: flex;
          border-bottom: 1px solid rgba(0, 0, 0, 0.08);
      }
      .tw-wisp-flex-row:last-child {
          border-bottom: none;
      }
      .tw-wisp-flex-header {
          border-bottom: 2px solid #025287;
      }
      .tw-wisp-flex-header .tw-wisp-flex-cell {
          font-size: 12px;
          font-weight: 600;
          letter-spacing: 0.1em;
          text-transform: uppercase;
          color: var(--tw-wisp-text-muted);
          display: flex;
          align-items: center;
      }
      .tw-wisp-company-logo {
          max-height: 40px;
          max-width: 140px;
          width: auto;
          object-fit: contain;
      }
      .tw-wisp-flex-cell {
          flex: 1;
          padding: 16px 20px;
          font-size: 15px;
          color: var(--tw-wisp-text-secondary);
          vertical-align: top;
      }
      .tw-wisp-label-cell {
          flex: 0 0 140px;
          font-weight: 700;
          color: var(--tw-wisp-text-primary);
      }
      .tw-wisp-case-study-link {
          color: #f06225 !important;
          text-decoration: none !important;
          font-weight: 600;
          border-bottom: 1px solid transparent !important;
          transition:
              color 0.2s,
              border-bottom-color 0.2s !important;
      }
      .tw-wisp-case-study-link:visited {
          color: #f06225;
      }
      .tw-wisp-case-study-link:hover {
          color: var(--tw-wisp-orange-hover) !important;
          border-bottom-color: var(--tw-wisp-orange-hover) !important;
      }

      @media (max-width: 768px) {
          .tw-wisp-flex-table-wrapper {
              position: relative;
          }
          .tw-wisp-flex-table {
              min-width: 500px;
          }
          .tw-wisp-label-cell {
              position: sticky;
              left: 0;
              background: var(--tw-wisp-bg-section-alt);
              z-index: 1;
              flex: 0 0 110px;
              font-size: 13px;
          }
          .tw-wisp-flex-cell {
              font-size: 13px;
              padding: 12px 14px;
          }
      }

      /* ── STORY CARD GRID ── */
      .tw-wisp-story-grid {
          display: grid;
          grid-template-columns: repeat(3, 1fr);
          gap: 32px;
          margin-top: 20px;
      }
      .tw-wisp-story-card {
          display: flex;
          flex-direction: column;
          background: #ffffff;
          border: 1px solid rgba(0, 0, 0, 0.08);
          border-radius: 8px;
          overflow: hidden;
          text-decoration: none !important;
          color: inherit;
          transition:
              border-color 0.3s,
              transform 0.3s,
              box-shadow 0.3s !important;
      }
      .tw-wisp-story-card:visited {
          color: inherit;
      }
      .tw-wisp-story-card:hover {
          border-color: rgba(240, 98, 37, 0.3) !important;
          transform: translateY(-4px) !important;
          box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
          text-decoration: none !important;
      }
      .tw-wisp-story-image {
          aspect-ratio: 16/10;
          overflow: hidden;
          background: #ebebeb;
          position: relative;
      }
      .tw-wisp-story-image img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          transition: transform 0.4s ease;
      }
      .tw-wisp-story-card:hover .tw-wisp-story-image img {
          transform: scale(1.05) !important;
      }
      .tw-wisp-story-play {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          width: 72px;
          height: auto;
          pointer-events: none;
          z-index: 2;
          filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.4));
          transition:
              transform 0.3s ease,
              filter 0.3s ease;
      }
      .tw-wisp-story-card:hover .tw-wisp-story-play {
          transform: translate(-50%, -50%) scale(1.1) !important;
          filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.5)) !important;
      }
      @media (max-width: 540px) {
          .tw-wisp-story-play {
              width: 56px;
          }
      }
      .tw-wisp-story-body {
          padding: 24px 28px;
          display: flex;
          flex-direction: column;
          gap: 8px;
          flex: 1;
      }
      .tw-wisp-story-body h3 {
          font-family: "Lato", sans-serif;
          font-size: 22px;
          font-weight: 700;
          color: var(--tw-wisp-text-primary);
          margin: 0;
      }
      .tw-wisp-story-body p {
          font-size: 14px;
          line-height: 1.5;
          color: var(--tw-wisp-text-secondary);
          margin: 0;
      }
      .tw-wisp-story-cta {
          color: var(--tw-wisp-orange);
          font-weight: 600;
          font-size: 15px;
          transition: color 0.2s;
          margin-top: auto;
      }
      .tw-wisp-story-card:hover .tw-wisp-story-cta {
          color: var(--tw-wisp-orange-hover) !important;
      }

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

      /* ── CTA SECTION ── */
      .tw-wisp-cta-section {
          padding: var(--tw-wisp-section-padding);
          background: var(--tw-wisp-bg-section-alt);
      }
      .tw-wisp-cta-grid {
          display: grid;
          grid-template-columns: 1fr;
          gap: 32px;
          max-width: 560px;
          margin: 0 auto;
      }
      .tw-wisp-cta-card {
          background: #ffffff;
          border: 1px solid rgba(0, 0, 0, 0.08);
          border-radius: 8px;
          padding: 24px 20px;
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          align-items: center;
          text-align: center;
          gap: 24px;
          transition: border-color 0.3s;
      }
      .tw-wisp-cta-card:hover {
          border-color: rgba(240, 98, 37, 0.3) !important;
      }
      .tw-wisp-cta-card h3 {
          font-family: "Lato", sans-serif;
          font-size: 28px;
          font-weight: 700;
          margin-bottom: 0;
      }
      .tw-wisp-cta-card p {
          font-size: 16px;
          color: var(--tw-wisp-text-secondary);
          margin: 12px 0 0;
          line-height: 1.6;
      }

      /* ── BUTTONS ── */
      .tw-wisp-btn {
          display: inline-block;
          text-align: center;
          width: 275px;
          font-size: 16px;
          font-weight: 600;
          text-decoration: none !important;
          fill: #f8f8f8;
          color: #f8f8f8 !important;
          background-color: #025287 !important;
          border-radius: 300px;
          padding: 10px 45px;
          transition:
              background-color 0.2s ease,
              color 0.2s ease !important;
          cursor: pointer;
      }
      .tw-wisp-btn:visited {
          color: #f8f8f8;
          background-color: #025287;
      }
      .tw-wisp-btn:hover {
          background-color: #f06225 !important;
      }
      .tw-wisp-btn-outline {
          background-color: #025287;
          color: #f8f8f8;
          border: none;
      }
      .tw-wisp-btn-outline:visited {
          color: #f8f8f8;
          background-color: #025287;
      }
      .tw-wisp-btn-outline:hover {
          background-color: #f06225 !important;
          color: #f8f8f8 !important;
      }

      /* ── RESPONSIVE ── */
      @media (max-width: 768px) {
          .tw-wisp-container {
              padding: 0 20px;
          }
          .tw-wisp-hero h1 {
              font-size: 32px;
          }
          .tw-wisp-hero .tw-wisp-subtitle {
              font-size: 18px;
          }
          .tw-wisp-hero .tw-wisp-container {
              padding: 28px 24px;
          }
          .tw-wisp-stats-grid {
              grid-template-columns: 1fr;
              gap: 32px;
          }
          .tw-wisp-stat-item:not(:last-child)::after {
              display: none;
          }
          .tw-wisp-two-col {
              grid-template-columns: 1fr;
              gap: 40px;
          }
          .tw-wisp-two-col.tw-wisp-reverse .tw-wisp-col-text {
              order: 1;
          }
          .tw-wisp-two-col.tw-wisp-reverse .tw-wisp-col-visual {
              order: 2;
          }
          .tw-wisp-cta-grid {
              grid-template-columns: 1fr;
          }
          .tw-wisp-section {
              padding: 60px 0;
          }
          .tw-wisp-section-header h2 {
              font-size: 26px;
          }
      }

      /* ── SVG HOVER ANIMATION + SIDE PANEL (scoped to .svg-anim wrapper) ── */
      .svg-anim {
          --active-color: #0367a9;
          --dim-opacity: 0.2;
          --transition-duration: 200ms;
          --panel-width: 240px;
          /* Layout-transition tuning. Adjust here to make the side-panel reveal/dismiss
             feel faster, slower, or differently eased — both .svg-anim and the panel
             itself reference these. The cubic-bezier curve matches the page's
             existing .tw-wisp-reveal motion (gentle acceleration, smooth
             deceleration). */
          --layout-transition-duration: 400ms;
          --layout-transition-easing: cubic-bezier(0.22, 0.61, 0.36, 1);
          --panel-fade-duration: 300ms;
          width: 100%;
          display: grid;
          /* Idle: panel column collapses to 0, SVG fills the full width and is
             centered in the section. When data-active-device is set on the wrapper
             (see rule below), the column expands to var(--panel-width). Grid
             template-columns is animatable in all current browsers since 2022-23. */
          grid-template-columns: 0fr 1fr;
          grid-template-areas:
              "buttons buttons"
              "panel   diagram";
          column-gap: 0;
          row-gap: 24px;
          align-items: start;
          transition:
              grid-template-columns var(--layout-transition-duration)
                  var(--layout-transition-easing),
              column-gap var(--layout-transition-duration)
                  var(--layout-transition-easing);
      }
      .svg-anim[data-active-device] {
          grid-template-columns: var(--panel-width) 1fr;
          column-gap: 24px;
      }
      .svg-anim > .tw-wisp-device-grid {
          grid-area: buttons;
      }
      .svg-anim > .tw-wisp-info-panel {
          grid-area: panel;
      }
      .svg-anim > svg {
          grid-area: diagram;
      }

      .svg-anim svg {
          width: 100%;
          height: auto;
          display: block;
      }

      /* Below desktop breakpoint, drop the side panel, stack vertically, and
           restore the original full-width SVG layout. The centered modal handles
           touch / narrow-viewport interactions. */
      @media (max-width: 899px) {
          .svg-anim {
              display: flex;
              flex-direction: column;
              align-items: center;
              column-gap: 0;
          }
          .svg-anim > .tw-wisp-info-panel {
              display: none;
          }
      }

      /* Transitions on the properties that change between idle/active. */
      .svg-anim svg g[data-source] {
          transition: opacity var(--transition-duration) ease;
      }
      .svg-anim svg g[data-source] line {
          transition: stroke var(--transition-duration) ease;
      }

      @keyframes svg-anim-marching-ants {
          to {
              stroke-dashoffset: -16;
          }
      }

      /* ── Side panel styling. Hidden by default; revealed when the wrapper has
           [data-active-device] set, with content populated by JS from
           twWispDevices. ── */
      .tw-wisp-info-panel {
          background: #ffffff;
          border: 1px solid var(--tw-wisp-border-subtle, rgba(2, 82, 135, 0.08));
          border-radius: 12px;
          padding: 24px 24px 22px;
          box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
          opacity: 0;
          transform: translateX(-12px);
          pointer-events: none;
          transition:
              opacity var(--panel-fade-duration) var(--layout-transition-easing),
              transform var(--panel-fade-duration) var(--layout-transition-easing),
              max-height var(--layout-transition-duration)
                  var(--layout-transition-easing);
          text-align: left;
          align-self: start;
          /* Collapse the panel both horizontally (via grid column) and vertically
             (via max-height) so it doesn't contribute to the row height when idle.
             Without max-height: 0, the content reflows to fit a 0-width column and
             balloons vertically (~1000px tall), inflating the wrapper. The 520px
             active-state max-height is a ceiling above the tallest panel (which
             reflows to ~430px at the narrower 240px panel width) without obvious
             overshoot. */
          min-width: 0;
          max-height: 0;
          overflow: hidden;
      }
      .svg-anim[data-active-device] .tw-wisp-info-panel {
          opacity: 1;
          transform: none;
          pointer-events: auto;
          max-height: 520px;
      }
      @media (prefers-reduced-motion: reduce) {
          .svg-anim,
          .tw-wisp-info-panel {
              transition: none;
              transform: none;
          }
      }

      .tw-wisp-info-panel-eyebrow {
          display: inline-block;
          font-size: 12px;
          font-weight: 700;
          letter-spacing: 0.12em;
          text-transform: uppercase;
          color: var(--tw-wisp-orange);
          margin-bottom: 8px;
      }
      .tw-wisp-info-panel-title {
          font-family: "Lato", sans-serif;
          font-size: 22px;
          font-weight: 700;
          color: var(--tw-wisp-text-primary);
          margin: 0 0 8px;
      }
      .tw-wisp-info-panel-intro {
          font-size: 15px;
          font-weight: 600;
          color: var(--tw-wisp-text-primary);
          margin: 0 0 14px;
          line-height: 1.5;
      }
      .tw-wisp-info-panel-body p {
          font-size: 14px;
          line-height: 1.55;
          color: var(--tw-wisp-text-secondary);
          margin: 0 0 12px;
      }
      .tw-wisp-info-panel-body ul {
          list-style: none;
          margin: 0 0 16px;
          padding: 0;
      }
      .tw-wisp-info-panel-body ul li {
          position: relative;
          padding-left: 18px;
          margin-bottom: 8px;
          font-size: 14px;
          line-height: 1.5;
          color: var(--tw-wisp-text-secondary);
      }
      .tw-wisp-info-panel-body ul li:last-child {
          margin-bottom: 0;
      }
      .tw-wisp-info-panel-body ul li::before {
          content: "";
          position: absolute;
          left: 4px;
          top: 7px;
          width: 6px;
          height: 6px;
          background: var(--tw-wisp-orange);
          border-radius: 50%;
      }
      .tw-wisp-info-panel-body a.tw-wisp-modal-cta {
          display: block;
          width: fit-content;
          margin: 4px auto 0;
          padding: 8px 22px;
          background: #025287;
          color: #f8f8f8;
          border-radius: 300px;
          font-size: 14px;
          font-weight: 600;
          text-decoration: none;
          transition: background-color 0.2s ease;
      }
      .tw-wisp-info-panel-body a.tw-wisp-modal-cta:hover,
      .tw-wisp-info-panel-body a.tw-wisp-modal-cta:focus-visible {
          background: var(--tw-wisp-orange);
          outline: none;
      }

      /* Hide the centered DEVICE modal at desktop widths (SVG side panel takes over).
           The iframe form modal (.tw-wisp-modal--iframe) must remain functional at all widths. */
      @media (min-width: 900px) {
          .tw-wisp-modal--device {
              display: none !important;
          }
      }

      /* ── Activation rules. Each rule pair matches BOTH transient :hover
           (immediate mouse response) AND the sticky [data-active-device] attribute
           set by JS (persists after the user moves off; also driven by JS focus
           handler for keyboard accessibility). :focus is intentionally NOT used in
           the CSS .elementor-23680 .elementor-element.elementor-element-252138b: it would otherwise persist after a click and conflict
           with a subsequent hover on a different button (each rule's
           :not([data-source="X"]) would dim the other rule's active lines). ── */

      /* G1 BN */
      .svg-anim:has(button[data-device="g1-bn"]:hover) g[data-source="g1-bn"] line,
      .svg-anim[data-active-device="g1-bn"] g[data-source="g1-bn"] line {
          stroke: var(--active-color);
          animation: svg-anim-marching-ants 1.5s linear infinite;
      }
      .svg-anim:has(button[data-device="g1-bn"]:hover)
          g[data-source]:not([data-source="g1-bn"]),
      .svg-anim[data-active-device="g1-bn"]
          g[data-source]:not([data-source="g1-bn"]) {
          opacity: var(--dim-opacity);
      }

      /* G2 BN */
      .svg-anim:has(button[data-device="g2-bn"]:hover) g[data-source="g2-bn"] line,
      .svg-anim[data-active-device="g2-bn"] g[data-source="g2-bn"] line {
          stroke: var(--active-color);
          animation: svg-anim-marching-ants 1.5s linear infinite;
      }
      .svg-anim:has(button[data-device="g2-bn"]:hover)
          g[data-source]:not([data-source="g2-bn"]),
      .svg-anim[data-active-device="g2-bn"]
          g[data-source]:not([data-source="g2-bn"]) {
          opacity: var(--dim-opacity);
      }

      /* RN */
      .svg-anim:has(button[data-device="rn"]:hover) g[data-target="rn"] line,
      .svg-anim[data-active-device="rn"] g[data-target="rn"] line {
          stroke: var(--active-color);
          animation: svg-anim-marching-ants 1.5s linear infinite;
      }
      .svg-anim:has(button[data-device="rn"]:hover)
          g[data-source]:not([data-target="rn"]),
      .svg-anim[data-active-device="rn"] g[data-source]:not([data-target="rn"]) {
          opacity: var(--dim-opacity);
      }

      /* RNv */
      .svg-anim:has(button[data-device="rnv"]:hover) g[data-target="rnv"] line,
      .svg-anim[data-active-device="rnv"] g[data-target="rnv"] line {
          stroke: var(--active-color);
          animation: svg-anim-marching-ants 1.5s linear infinite;
      }
      .svg-anim:has(button[data-device="rnv"]:hover)
          g[data-source]:not([data-target="rnv"]),
      .svg-anim[data-active-device="rnv"] g[data-source]:not([data-target="rnv"]) {
          opacity: var(--dim-opacity);
      }

      /* RNm */
      .svg-anim:has(button[data-device="rnm"]:hover) g[data-target="rnm"] line,
      .svg-anim[data-active-device="rnm"] g[data-target="rnm"] line {
          stroke: var(--active-color);
          animation: svg-anim-marching-ants 1.5s linear infinite;
      }
      .svg-anim:has(button[data-device="rnm"]:hover)
          g[data-source]:not([data-target="rnm"]),
      .svg-anim[data-active-device="rnm"] g[data-source]:not([data-target="rnm"]) {
          opacity: var(--dim-opacity);
      }

      /* ============================================================
           HOVER-STATE HARDENING
           Scoped under #tw-wisp-root so the rest / hover / return states
           survive StrataX theme overrides inside the Elementor Custom HTML
           widget.
             - ID-scoped .elementor-23680 .elementor-element.elementor-element-252138bs outrank theme class/element rules.
             - !important is applied ONLY to theme-contested properties
               (transition, transform, color, background, border, box-shadow,
               text-decoration, outline) so these also beat the theme's own
               !important declarations (specificity breaks the tie).
             - Rest-state transitions are re-declared, not just hover: the
               hover-OUT ("after") animation is driven by the rest state, so
               if the theme strips that transition, elements snap back instead
               of easing. Protecting it keeps both directions smooth.
           This block only ADDS overrides; no existing rule is modified.
           ============================================================ */

      /* Inline text links */
      #tw-wisp-root .tw-wisp-section-body .tw-wisp-inline-link {
          color: var(--tw-wisp-orange) !important;
          text-decoration: none !important;
          border-bottom: 1px solid transparent !important;
          transition:
              color 0.2s ease,
              border-bottom-color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-section-body .tw-wisp-inline-link:hover,
      #tw-wisp-root .tw-wisp-section-body .tw-wisp-inline-link:focus-visible {
          color: var(--tw-wisp-orange-hover) !important;
          border-bottom-color: var(--tw-wisp-orange-hover) !important;
      }

      /* Case-study link */
      #tw-wisp-root .tw-wisp-case-study-link {
          color: #f06225 !important;
          text-decoration: none !important;
          border-bottom: 1px solid transparent !important;
          transition:
              color 0.2s ease,
              border-bottom-color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-case-study-link:hover,
      #tw-wisp-root .tw-wisp-case-study-link:focus-visible {
          color: var(--tw-wisp-orange-hover) !important;
          border-bottom-color: var(--tw-wisp-orange-hover) !important;
      }

      /* Primary + outline buttons */
      #tw-wisp-root .tw-wisp-btn {
          color: #f8f8f8 !important;
          background-color: #025287 !important;
          text-decoration: none !important;
          transition:
              background-color 0.2s ease,
              color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-btn:hover,
      #tw-wisp-root .tw-wisp-btn:focus-visible {
          background-color: #f06225 !important;
          color: #f8f8f8 !important;
      }

      /* Device CTAs (lift + underline sweep) */
      #tw-wisp-root .tw-wisp-device-cta {
          color: #025287 !important;
          text-decoration: none !important;
          transition:
              border-color 0.25s ease,
              transform 0.25s ease,
              box-shadow 0.25s ease,
              color 0.25s ease,
              background-color 0.25s ease !important;
      }
      #tw-wisp-root .tw-wisp-device-cta:hover,
      #tw-wisp-root .tw-wisp-device-cta:focus-visible {
          background: #ffffff !important;
          border-color: rgba(240, 98, 37, 0.4) !important;
          transform: translateY(-3px) !important;
          box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1) !important;
          color: var(--tw-wisp-orange) !important;
          outline: none !important;
      }
      #tw-wisp-root .tw-wisp-device-cta::after {
          transform: scaleX(0) !important;
          transition: transform 0.3s ease !important;
      }
      #tw-wisp-root .tw-wisp-device-cta:hover::after,
      #tw-wisp-root .tw-wisp-device-cta:focus-visible::after {
          transform: scaleX(1) !important;
      }
      #tw-wisp-root .tw-wisp-device-cta:active {
          transform: translateY(-1px) !important;
      }

      /* Expandable bullet triggers */
      #tw-wisp-root .tw-wisp-expand-trigger {
          background-color: transparent !important;
          border-color: transparent !important;
          color: var(--tw-wisp-text-secondary) !important;
          transition:
              background-color 0.2s ease,
              border-color 0.2s ease,
              color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-expand-trigger:hover,
      #tw-wisp-root .tw-wisp-expand-trigger:focus-visible {
          background-color: rgba(240, 98, 37, 0.04) !important;
          border-color: rgba(240, 98, 37, 0.18) !important;
          color: var(--tw-wisp-text-primary) !important;
          outline: none !important;
      }
      #tw-wisp-root .tw-wisp-expand-trigger .tw-wisp-expand-icon {
          transition:
              transform 0.3s ease,
              background-color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-expand-trigger:hover .tw-wisp-expand-icon,
      #tw-wisp-root .tw-wisp-expand-trigger:focus-visible .tw-wisp-expand-icon {
          background: rgba(240, 98, 37, 0.2) !important;
      }

      /* Sticky CTA — harden colors + protect the reveal transition.
           Transform/opacity/visibility are intentionally NOT forced here:
           the scroll-in reveal animates those and must stay free to move. */
      #tw-wisp-root .tw-wisp-sticky-cta {
          background-color: #025287 !important;
          color: #f8f8f8 !important;
          text-decoration: none !important;
          transition:
              opacity 0.3s ease,
              transform 0.3s ease,
              visibility 0.3s ease,
              background-color 0.2s ease,
              box-shadow 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-sticky-cta:hover,
      #tw-wisp-root .tw-wisp-sticky-cta:focus-visible {
          background-color: #f06225 !important;
          box-shadow:
              0 12px 32px rgba(240, 98, 37, 0.28),
              0 2px 6px rgba(0, 0, 0, 0.12) !important;
          outline: none !important;
      }

      /* Modal close button */
      #tw-wisp-root .tw-wisp-modal-close {
          background: transparent !important;
          color: var(--tw-wisp-text-muted) !important;
          transition:
              background-color 0.2s ease,
              color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-modal-close:hover,
      #tw-wisp-root .tw-wisp-modal-close:focus-visible {
          background: rgba(0, 0, 0, 0.06) !important;
          color: var(--tw-wisp-orange) !important;
          outline: none !important;
      }

      /* Modal CTA button */
      #tw-wisp-root .tw-wisp-modal-panel .tw-wisp-modal-cta {
          color: #f8f8f8 !important;
          text-decoration: none !important;
          transition: background-color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-modal-panel .tw-wisp-modal-cta:hover,
      #tw-wisp-root .tw-wisp-modal-panel .tw-wisp-modal-cta:focus-visible {
          background: #f06225 !important;
          color: #f8f8f8 !important;
          outline: none !important;
      }

      /* Success-story cards (lift + image zoom + play scale + CTA tint) */
      #tw-wisp-root .tw-wisp-story-card {
          transition:
              border-color 0.3s ease,
              transform 0.3s ease,
              box-shadow 0.3s ease !important;
      }
      #tw-wisp-root .tw-wisp-story-card:hover {
          border-color: rgba(240, 98, 37, 0.3) !important;
          transform: translateY(-4px) !important;
          box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
          text-decoration: none !important;
      }
      #tw-wisp-root .tw-wisp-story-card .tw-wisp-story-image img {
          transition: transform 0.4s ease !important;
      }
      #tw-wisp-root .tw-wisp-story-card:hover .tw-wisp-story-image img {
          transform: scale(1.05) !important;
      }
      #tw-wisp-root .tw-wisp-story-card .tw-wisp-story-play {
          transition:
              transform 0.3s ease,
              filter 0.3s ease !important;
      }
      #tw-wisp-root .tw-wisp-story-card:hover .tw-wisp-story-play {
          transform: translate(-50%, -50%) scale(1.1) !important;
          filter: drop-shadow(0 6px 14px rgba(0, 0, 0, 0.5)) !important;
      }
      #tw-wisp-root .tw-wisp-story-cta {
          color: var(--tw-wisp-orange) !important;
          transition: color 0.2s ease !important;
      }
      #tw-wisp-root .tw-wisp-story-card:hover .tw-wisp-story-cta {
          color: var(--tw-wisp-orange-hover) !important;
      }

      /* CTA-section cards */
      #tw-wisp-root .tw-wisp-cta-card {
          transition: border-color 0.3s ease !important;
      }
      #tw-wisp-root .tw-wisp-cta-card:hover {
          border-color: rgba(240, 98, 37, 0.3) !important;
      }

      /* Reduced-motion: the hardened transitions above use !important at
           #tw-wisp-root specificity, which would otherwise outrank the global
           prefers-reduced-motion reset. Re-assert instant transitions for the
           same .elementor-23680 .elementor-element.elementor-element-252138bs (matched specificity, later source order) so users who
           opt out of motion still get no easing. */
      @media (prefers-reduced-motion: reduce) {
          #tw-wisp-root .tw-wisp-section-body .tw-wisp-inline-link,
          #tw-wisp-root .tw-wisp-case-study-link,
          #tw-wisp-root .tw-wisp-btn,
          #tw-wisp-root .tw-wisp-device-cta,
          #tw-wisp-root .tw-wisp-device-cta::after,
          #tw-wisp-root .tw-wisp-expand-trigger,
          #tw-wisp-root .tw-wisp-expand-trigger .tw-wisp-expand-icon,
          #tw-wisp-root .tw-wisp-sticky-cta,
          #tw-wisp-root .tw-wisp-modal-close,
          #tw-wisp-root .tw-wisp-modal-panel .tw-wisp-modal-cta,
          #tw-wisp-root .tw-wisp-story-card,
          #tw-wisp-root .tw-wisp-story-card .tw-wisp-story-image img,
          #tw-wisp-root .tw-wisp-story-card .tw-wisp-story-play,
          #tw-wisp-root .tw-wisp-story-cta,
          #tw-wisp-root .tw-wisp-cta-card {
              transition-duration: 0.001ms !important;
          }
      }/* End custom CSS */