|
442 | 442 | } |
443 | 443 | } |
444 | 444 |
|
445 | | - .testimonial__person { |
446 | | - display: flex; |
447 | | - align-items: center; |
448 | | - gap: var(--space-4); |
449 | | - color: var(--color-text-secondary); |
450 | | - font-size: var(--font-size-sm); |
451 | | - line-height: var(--line-height-snug); |
452 | | - } |
453 | | - |
454 | | - .testimonial__avatar { |
455 | | - --avatar-size: 2.75rem; |
456 | | - } |
457 | | - |
458 | | - .testimonial__profile-link { |
459 | | - display: flex; |
460 | | - align-items: center; |
461 | | - gap: var(--space-4); |
462 | | - color: inherit; |
463 | | - text-decoration: none; |
464 | | - transition: opacity var(--transition-fast, 0.15s) ease; |
465 | | - |
466 | | - &:hover, |
467 | | - &:focus-visible { |
468 | | - opacity: 0.85; |
469 | | - |
470 | | - .testimonial__name { |
471 | | - text-decoration: underline; |
472 | | - } |
473 | | - } |
474 | | - } |
475 | | - |
476 | | - .testimonial__byline { |
477 | | - display: flex; // name stacked over conference beside the avatar |
478 | | - flex-direction: column; |
479 | | - line-height: var(--line-height-snug); |
480 | | - } |
481 | | - |
482 | | - .testimonial__name { |
483 | | - color: var(--color-text); |
484 | | - font-weight: var(--font-weight-semibold); |
485 | | - } |
486 | | - |
487 | | - .testimonial__conference { |
488 | | - color: var(--color-text-secondary); |
489 | | - } |
490 | | - |
491 | 445 | // ── Inline tip callout — "field note" ───────────────────────────────────── |
492 | | - // Unfilled aside, ruled top and bottom, led by an uppercase rubric. Reads as |
493 | | - // an editorial column rather than a boxed docs admonition, and stays in the |
494 | | - // warm + ruby system so it never competes with the interview quotes. |
495 | | - |
496 | 446 | .tip { |
497 | 447 | margin-block: var(--space-7); |
498 | 448 | padding-block: var(--space-5); |
|
504 | 454 | align-items: center; |
505 | 455 | gap: var(--space-2); |
506 | 456 | margin: 0 0 var(--space-3); |
507 | | - // Ideas speak in the ruby accent; tools are a quieter, utilitarian rubric. |
508 | 457 | color: var(--color-accent); |
509 | 458 | } |
510 | 459 |
|
|
655 | 604 | text-transform: uppercase; |
656 | 605 | } |
657 | 606 |
|
658 | | - // ── Voices behind the guides ─────────────────────────────────────────────── |
659 | | - |
660 | | - .voices-intro { |
661 | | - color: var(--color-text-secondary); |
662 | | - line-height: var(--line-height-normal); |
663 | | - } |
664 | | - |
665 | | - .voices-cta { |
666 | | - margin-bottom: var(--space-5); |
667 | | - font-size: var(--font-size-sm); |
668 | | - font-weight: var(--font-weight-medium); |
669 | | - } |
670 | | - |
671 | | - .voices { |
672 | | - list-style: none; |
673 | | - padding: 0; |
674 | | - margin: 0; |
675 | | - display: grid; |
676 | | - // Intrinsically responsive: 1 column on mobile, up to 3 on the prose |
677 | | - // column — no breakpoint needed, and names never overflow their track. |
678 | | - grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); |
679 | | - gap: var(--space-4) var(--space-5); |
680 | | - } |
| 607 | + // ── Person ───────────────────────────────────────────────────────────────── |
681 | 608 |
|
682 | | - .voice { |
| 609 | + .person { |
683 | 610 | display: flex; |
684 | 611 | align-items: center; |
685 | 612 | gap: var(--space-3); |
686 | 613 | margin: 0; |
687 | 614 | } |
688 | 615 |
|
689 | | - .voice__link { |
| 616 | + .person__link { |
690 | 617 | display: flex; |
691 | 618 | align-items: center; |
692 | 619 | gap: var(--space-3); |
|
698 | 625 | &:focus-visible { |
699 | 626 | opacity: 0.85; |
700 | 627 |
|
701 | | - .voice__name { |
| 628 | + .person__name { |
702 | 629 | text-decoration: underline; |
703 | 630 | } |
704 | 631 | } |
705 | 632 | } |
706 | 633 |
|
707 | | - .voice__avatar { |
| 634 | + .person__avatar { |
708 | 635 | --avatar-size: 2rem; |
709 | 636 | } |
710 | 637 |
|
711 | | - .voice__info { |
| 638 | + .person__info { |
712 | 639 | display: flex; |
713 | 640 | flex-direction: column; |
| 641 | + min-inline-size: 0; |
714 | 642 | line-height: var(--line-height-snug); |
715 | 643 | } |
716 | 644 |
|
717 | | - .voice__name { |
| 645 | + .person__name { |
718 | 646 | font-size: var(--font-size-sm); |
719 | 647 | font-weight: var(--font-weight-medium); |
720 | 648 | color: var(--color-text); |
721 | 649 | } |
722 | 650 |
|
723 | | - .voice__conference { |
| 651 | + .person__meta { |
724 | 652 | font-size: var(--font-size-xs); |
725 | 653 | color: var(--color-text-secondary); |
726 | 654 | } |
727 | 655 |
|
| 656 | + .person--lg { |
| 657 | + .person__avatar { |
| 658 | + --avatar-size: 2.75rem; |
| 659 | + } |
| 660 | + |
| 661 | + .person__name { |
| 662 | + font-weight: var(--font-weight-semibold); |
| 663 | + } |
| 664 | + |
| 665 | + .person__meta { |
| 666 | + font-size: var(--font-size-sm); |
| 667 | + } |
| 668 | + } |
| 669 | + |
| 670 | + // ── Voices behind the guides ─────────────────────────────────────────────── |
| 671 | + |
| 672 | + .voices-intro { |
| 673 | + color: var(--color-text-secondary); |
| 674 | + line-height: var(--line-height-normal); |
| 675 | + } |
| 676 | + |
| 677 | + .voices-cta { |
| 678 | + margin-bottom: var(--space-5); |
| 679 | + font-size: var(--font-size-sm); |
| 680 | + font-weight: var(--font-weight-medium); |
| 681 | + } |
| 682 | + |
| 683 | + .voices { |
| 684 | + list-style: none; |
| 685 | + padding: 0; |
| 686 | + margin: 0; |
| 687 | + display: grid; |
| 688 | + // Intrinsically responsive: 1 column on mobile, up to 3 on the prose |
| 689 | + // column — no breakpoint needed, and names never overflow their track. |
| 690 | + grid-template-columns: repeat(auto-fill, minmax(14rem, 1fr)); |
| 691 | + gap: var(--space-4) var(--space-5); |
| 692 | + } |
| 693 | + |
728 | 694 | @media (max-width: 31.75rem) { |
729 | 695 | .voices { |
730 | 696 | grid-template-columns: repeat(2, minmax(0, 1fr)); |
731 | 697 | gap: var(--space-3) var(--space-4); |
732 | 698 | } |
733 | 699 |
|
734 | | - .voice { |
735 | | - align-items: flex-start; |
736 | | - gap: var(--space-2); |
737 | | - min-inline-size: 0; |
738 | | - } |
739 | | - |
740 | | - .voice__link { |
| 700 | + .voice, |
| 701 | + .voice .person__link { |
741 | 702 | align-items: flex-start; |
742 | 703 | gap: var(--space-2); |
743 | 704 | min-inline-size: 0; |
744 | 705 | } |
745 | 706 |
|
746 | | - .voice__avatar { |
| 707 | + .voice .person__avatar { |
747 | 708 | --avatar-size: 1.75rem; |
748 | 709 | } |
749 | 710 |
|
750 | | - .voice__info { |
751 | | - min-inline-size: 0; |
752 | | - } |
753 | | - |
754 | | - .voice__name, |
755 | | - .voice__conference { |
| 711 | + .voice .person__name, |
| 712 | + .voice .person__meta { |
756 | 713 | overflow: hidden; |
757 | 714 | text-overflow: ellipsis; |
758 | 715 | white-space: nowrap; |
759 | 716 | } |
760 | 717 | } |
761 | 718 |
|
762 | 719 | @media (max-width: 23rem) { |
763 | | - .voice__conference { |
| 720 | + .voice .person__meta { |
764 | 721 | display: none; |
765 | 722 | } |
766 | 723 | } |
|
0 commit comments