.section-label {
          font-size: 13px; font-weight: 600; text-transform: uppercase;
          letter-spacing: 0.12em; color: var(--text-tertiary);
          margin-bottom: 16px; text-align: center;
        }
        .section-heading {
          font-family: var(--font-heading);
          font-size: clamp(36px, 5vw, 64px);
          font-weight: 700; line-height: 1.1;
          letter-spacing: -0.02em;
          text-align: center;
          margin-bottom: 64px;
        }

        @keyframes fadeInUp {
          from { opacity: 0; transform: translateY(24px); }
          to { opacity: 1; transform: translateY(0); }
        }
        .reveal {
          opacity: 0; transform: translateY(32px);
          transition: opacity 0.7s ease, transform 0.7s ease;
        }
        .reveal.visible { opacity: 1; transform: translateY(0); }

        .about-hero {
          position: relative; overflow: hidden;
          padding: 160px 24px 80px;
        }
        .about-hero-glow {
          position: absolute; top: -20%; right: -10%;
          width: 800px; height: 800px;
          background: radial-gradient(circle, rgba(0,68,254,0.04) 0%, transparent 70%);
          pointer-events: none;
        }

        .about-section-alt {
          padding: 120px 0;
          background: var(--bg-warm, #f5f4f1);
          border-top: 1px solid var(--border-subtle);
          border-bottom: 1px solid var(--border-subtle);
        }

        .about-mv-grid {
          display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
        }
        .about-mv-card {
          padding: 48px;
          background: var(--bg-card);
          border: 1px solid var(--border-subtle);
          border-radius: var(--radius-lg);
        }
        .about-mv-eyebrow {
          font-size: 11px; font-weight: 700; text-transform: uppercase;
          letter-spacing: 0.1em; color: var(--accent-blue); margin-bottom: 12px;
        }
        .about-mv-title {
          font-family: var(--font-heading); font-size: 22px;
          font-weight: 700; margin-bottom: 12px;
        }
        .about-mv-card p {
          font-size: 15px; color: var(--text-secondary); line-height: 1.7;
        }

        .about-story-block {
          display: grid; grid-template-columns: 1fr 1fr;
          gap: 64px; align-items: center;
          margin-bottom: 100px;
        }
        .about-story-block:last-child { margin-bottom: 0; }
        .about-story-block.reverse .about-story-text { order: 2; }
        .about-story-block.reverse .about-story-image { order: 1; }
        .about-story-text h2 {
          font-family: var(--font-heading);
          font-size: clamp(28px, 3.5vw, 44px);
          font-weight: 700; line-height: 1.15; margin-bottom: 20px;
        }
        .about-story-text p {
          font-size: 16px; color: var(--text-secondary); line-height: 1.7;
        }
        .about-story-image {
          display: flex;
          justify-content: center;
        }
        .about-story-image img {
          width: 100%;
          height: auto;
          display: block;
          border-radius: var(--radius-lg);
          object-fit: contain;
          transition: transform 0.6s ease;
        }
        .about-story-image--portrait img {
          width: min(100%, 420px);
        }
        .about-story-image--landscape img {
          width: 100%;
        }
        .about-story-block:hover .about-story-image img {
          transform: scale(1.02);
        }

        .about-cta-grid {
          display: grid; grid-template-columns: 1fr 1fr;
          gap: 64px; align-items: center;
        }
        .about-cta-image img {
          width: 100%; display: block; border-radius: var(--radius-lg);
        }

        .about-team-grid {
          display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
        }
        .about-team-card {
          transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .about-team-card:hover {
          transform: translateY(-4px);
          box-shadow: 0 8px 24px rgba(0,0,0,0.06);
        }
        .about-team-card-img {
          aspect-ratio: 1/1; border-radius: var(--radius-lg); overflow: hidden;
          background: #fff;
        }
        .about-team-card-img img {
          width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block;
          transition: transform 0.6s ease, filter 0.6s ease;
          filter: grayscale(1);
        }
        .about-team-card-img--hans img {
          transform: translateY(-6%);
        }
        .about-team-card:hover .about-team-card-img img {
          transform: scale(1.03);
          filter: grayscale(0);
        }
        .about-team-card:hover .about-team-card-img--hans img {
          transform: translateY(-6%) scale(1.03);
        }
        .about-team-card-img--placeholder {
          display: flex; align-items: center; justify-content: center;
          background: var(--bg-secondary);
        }
        .about-team-card-img--placeholder img {
          width: 48px !important; height: auto !important;
          object-fit: contain !important;
        }
        .about-team-card-info { padding: 20px 24px; }
        .about-team-card-info h4 { font-size: 17px; font-weight: 600; margin-bottom: 4px; }
        .about-team-role { font-size: 14px; color: var(--text-secondary); margin-bottom: 12px; }
        .about-team-contact { display: flex; flex-direction: column; gap: 2px; }
        .about-team-contact a {
          font-size: 13px; color: var(--text-tertiary);
          transition: color 0.2s ease;
        }
        .about-team-contact a:hover { color: var(--accent-blue); }

        @media (max-width: 768px) {
          .about-hero { padding: 120px 24px 60px; }
          .about-section-alt { padding: 80px 0; }
          .about-mv-grid { grid-template-columns: 1fr; }
          .about-mv-card { padding: 32px; }
          .about-story-block { grid-template-columns: 1fr; gap: 32px; }
          .about-story-block.reverse .about-story-text { order: 1; }
          .about-story-block.reverse .about-story-image { order: 2; }
          .about-story-image img { max-height: none; }
          .about-story-image--portrait img { width: min(100%, 320px); }
          .about-cta-grid { grid-template-columns: 1fr; gap: 32px; }
          .about-team-grid { grid-template-columns: 1fr; }
          .section-heading { margin-bottom: 40px; }
        }
        @media (max-width: 480px) {
          .about-hero { padding: 100px 18px 48px; }
          .about-mv-card { padding: 28px 22px; }
          .about-team-card-info { padding: 18px; }
        }
