Something went wrong. Try again.
My website. cameron.stream
Something went wrong. Try again.
CSS
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471.type-page { --type-ink: #151515; --type-paper: #f3f0e9; --type-purple: #bca3c8; --type-line: rgba(21, 21, 21, 0.25); width: 100%; overflow: hidden; background: var(--type-paper); color: var(--type-ink); font-family: Inter, system-ui, sans-serif;}
.type-page *, .type-page *::before, .type-page *::after { box-sizing: border-box; }.type-page a { color: inherit; }body:has(.type-page) > .theme-toggle,body:has(.type-page) > .theme-preferences { display: none; }
.type-nav,.type-section-label,.type-footer { display: flex; justify-content: space-between; align-items: center; gap: 1rem; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.13em;}
.type-nav { min-height: 68px; padding: 0 2rem; border-bottom: 1px solid var(--type-line);}
.type-wordmark { display: flex; align-items: center; gap: 0.7rem; text-decoration: none;}
.type-wordmark-ring { font-family: "Around", sans-serif; font-size: 1.75rem; line-height: 1;}
.type-nav-meta { display: flex; gap: 2rem; }.type-nav-meta a { text-underline-offset: 0.3em; }
.type-hero { position: relative; min-height: min(900px, 86vh); padding: clamp(5rem, 11vw, 10rem) 2rem 2rem; display: flex; flex-direction: column; justify-content: flex-end; isolation: isolate;}
.type-kicker { margin: 0 0 1.5rem; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.15em;}
.type-hero h1 { margin: 0; font-family: "Around", sans-serif; font-size: clamp(5rem, 16.5vw, 15rem); font-weight: 400; line-height: 0.9; letter-spacing: 0.005em; white-space: nowrap;}
.type-hero > .type-kicker { margin-bottom: 2.75rem; }
.type-deck { max-width: 580px; margin: clamp(2rem, 5vw, 4rem) 0 4rem auto; font-size: clamp(1.15rem, 2vw, 1.55rem); line-height: 1.35;}
.type-hero-footer { display: grid; grid-template-columns: 1fr 1fr 1fr; padding-top: 1rem; border-top: 1px solid var(--type-line); font-family: "Around", sans-serif; font-size: 0.82rem;}
.type-hero-footer span:nth-child(2) { text-align: center; }.type-hero-footer span:last-child { text-align: right; }
.type-orbit { position: absolute; z-index: -1; width: clamp(260px, 35vw, 540px); aspect-ratio: 1; top: clamp(3rem, 5vw, 6rem); right: clamp(-9rem, -5vw, -3rem); border: 1px solid var(--type-line); border-radius: 50%; animation: type-breathe 8s ease-in-out infinite;}
.type-orbit::before,.type-orbit::after { content: ""; position: absolute; inset: 11%; border: 1px solid var(--type-line); border-radius: 50%;}
.type-orbit::after { inset: 36%; background: var(--type-purple); border: 0; }
.type-orbit-core { position: absolute; inset: 38%; z-index: 1; display: grid; place-items: center; color: var(--type-paper); font-family: "Around", sans-serif; font-size: clamp(3rem, 8vw, 8rem);}
.type-orbit-word { position: absolute; padding: 0.25rem 0.45rem; background: var(--type-paper); font-family: "Around", sans-serif; font-size: clamp(0.55rem, 1vw, 0.8rem); letter-spacing: 0.07em;}
.type-orbit-word-one { top: 9%; left: 18%; transform: rotate(-28deg); }.type-orbit-word-two { top: 48%; left: -5%; transform: rotate(-90deg); }.type-orbit-word-three { right: 0; bottom: 19%; transform: rotate(47deg); }
@keyframes type-breathe { 0%, 100% { transform: scale(1) rotate(0deg); } 50% { transform: scale(1.018) rotate(2deg); }}
.type-section-label { padding-bottom: 0.85rem; border-bottom: 1px solid var(--type-line);}
.type-section-label-dark { border-color: var(--type-line); }
.type-tester-section,.type-exchange,.type-glyphs,.type-details { padding: clamp(4rem, 9vw, 8rem) 2rem;}
.type-tester { min-height: 1.15em; margin: clamp(4rem, 8vw, 8rem) 0 2rem; outline: none; font-family: "Around", sans-serif; font-size: clamp(4rem, 11vw, 10rem); line-height: 0.95; overflow-wrap: anywhere;}
.type-tester:focus { text-shadow: 0 0 28px rgba(188, 163, 200, 0.35); }.type-tester:focus-visible { outline: 1px solid var(--type-purple); outline-offset: 0.18em;}
.type-tester-note { margin: 0; font-family: "Around", sans-serif; font-size: 0.78rem;}
.type-exchange { border-top: 1px solid var(--type-line);}
.type-exchange-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: clamp(4rem, 8vw, 8rem); border-top: 1px solid var(--type-line); border-left: 1px solid var(--type-line);}
.type-exchange-grid p { min-width: 0; min-height: clamp(360px, 39vw, 660px); margin: 0; padding: clamp(1rem, 2vw, 1.75rem); display: flex; align-items: flex-end; overflow: hidden; border-right: 1px solid var(--type-line); border-bottom: 1px solid var(--type-line); font-family: "Around", sans-serif; font-size: clamp(3rem, 6.8vw, 7.25rem); font-weight: 400; line-height: 0.92; letter-spacing: 0.005em;}
.type-exchange-grid p:last-child { background: var(--type-purple);}
.type-exchange-note { width: min(540px, 100%); margin: clamp(2rem, 4vw, 3.5rem) 0 0 auto; font-size: clamp(0.9rem, 1.25vw, 1.05rem); line-height: 1.55;}
.type-manifesto { padding: clamp(4rem, 9vw, 8rem) 2rem; border-top: 1px solid var(--type-line); background: var(--type-paper); color: var(--type-ink);}
.type-manifesto-grid { display: grid; grid-template-columns: 1fr; gap: clamp(4rem, 8vw, 8rem); margin-top: clamp(4rem, 9vw, 9rem);}
.type-manifesto-lead { max-width: 1300px; margin: 0; color: var(--type-ink); font-family: "Around", sans-serif; font-size: clamp(4rem, 9.4vw, 10rem); line-height: 0.94; letter-spacing: 0;}
.type-manifesto-copy { width: min(900px, 67%); margin-left: 0; padding-top: 1.1rem; display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 5vw, 5rem); border-top: 1px solid var(--type-line); font-size: 0.9rem; line-height: 1.6;}
.type-manifesto-copy p { margin: 0; }
.type-alphabet { display: grid; grid-template-columns: repeat(13, 1fr); margin-top: clamp(3rem, 7vw, 6rem); border-top: 1px solid var(--type-line); border-left: 1px solid var(--type-line);}
.type-alphabet span { display: grid; place-items: center; aspect-ratio: 1; border-right: 1px solid var(--type-line); border-bottom: 1px solid var(--type-line); font-family: "Around", sans-serif; font-size: clamp(1.5rem, 4vw, 4rem);}
.type-number-row { display: grid; grid-template-columns: 2fr 1fr; gap: 2rem; margin-top: 3rem; font-family: "Around", sans-serif; font-size: clamp(2rem, 6vw, 6rem);}
.type-number-row p { margin: 0; overflow-wrap: anywhere; }
.type-detail-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: clamp(3rem, 7vw, 6rem); border-top: 1px solid var(--type-line); border-left: 1px solid var(--type-line);}
.type-detail-grid article { min-height: 490px; padding: 1.5rem; display: flex; flex-direction: column; border-right: 1px solid var(--type-line); border-bottom: 1px solid var(--type-line);}
.type-detail-glyph { display: block; margin: auto 0; text-align: center; font-family: "Around", sans-serif; font-size: clamp(6rem, 12vw, 12rem); line-height: 1;}
.type-detail-grid h2 { margin: 0 0 0.6rem; font-family: "Around", sans-serif; font-size: 0.95rem; font-weight: 400;}
.type-detail-grid p { margin: 0; color: #555; font-size: 0.82rem; line-height: 1.45;}
.type-love { min-height: 100svh; padding: clamp(3rem, 6vw, 6rem) 2rem; display: grid; align-items: center; overflow: hidden; background: var(--type-ink); color: var(--type-paper);}
.type-love p { width: fit-content; max-width: 100%; margin: 0 auto; font-family: "Around", sans-serif; font-size: clamp(5rem, 14vw, 14rem); line-height: 0.83; letter-spacing: -0.035em;}
.type-love p > span { display: block;}
.type-love p > span:first-child { margin-left: 0;}
.type-love p > span:last-child { margin-left: clamp(2.5rem, 9vw, 10rem); margin-top: 0.16em; color: var(--type-purple); text-align: left;}
.type-love-period { color: var(--type-paper);}
.type-download { padding: clamp(5rem, 10vw, 9rem) 2rem; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; background: var(--type-ink); color: var(--type-paper);}
.type-download h2 { margin: 0; color: var(--type-purple); font-family: "Around", sans-serif; font-size: clamp(3.5rem, 7.2vw, 7rem); font-weight: 400; line-height: 1.02;}
.type-download h2 span { display: block; white-space: nowrap;}
.type-download-actions { display: flex; flex-direction: column; justify-content: flex-end;}
.type-download-actions a { padding: 1.3rem 0; display: flex; justify-content: space-between; gap: 1rem; border-top: 1px solid rgba(243, 240, 233, 0.35); text-decoration: none; transition: color 150ms ease, padding 150ms ease;}
.type-download-actions a:last-child { border-bottom: 1px solid rgba(243, 240, 233, 0.35); }.type-download-actions a:hover { padding-left: 0.75rem; color: var(--type-purple); }.type-download-actions span { font-size: 0.7rem; letter-spacing: 0.12em; }.type-download-actions strong { font-family: "Around", sans-serif; font-size: 0.85rem; font-weight: 400; }
.type-footer { padding: 1.5rem 2rem; background: var(--type-ink); color: var(--type-paper); border-top: 1px solid rgba(243, 240, 233, 0.25);}
.type-footer a { text-underline-offset: 0.3em; }
@media (max-width: 900px) { .type-alphabet { grid-template-columns: repeat(7, 1fr); } .type-detail-grid { grid-template-columns: repeat(2, 1fr); } .type-manifesto-grid, .type-download { grid-template-columns: 1fr; } .type-manifesto-copy { width: 100%; } .type-detail-grid article { min-height: 380px; }}
@media (max-width: 600px) { .type-nav, .type-tester-section, .type-exchange, .type-manifesto, .type-glyphs, .type-details, .type-love, .type-download, .type-footer { padding-left: 1rem; padding-right: 1rem; } .type-nav-meta span, .type-section-label span:last-child { display: none; } .type-hero { min-height: 760px; padding-left: 1rem; padding-right: 1rem; } .type-orbit { width: 220px; right: -6rem; top: 2rem; } .type-hero h1 { font-size: clamp(3.5rem, 17.5vw, 7.5rem); } .type-hero > .type-kicker { margin-bottom: 2rem; } .type-hero-footer { grid-template-columns: 1fr 1fr; gap: 0.5rem; } .type-hero-footer span:nth-child(2) { text-align: right; } .type-hero-footer span:last-child { display: none; } .type-alphabet { grid-template-columns: repeat(4, 1fr); } .type-number-row { grid-template-columns: 1fr; } .type-manifesto-copy { grid-template-columns: 1fr; } .type-exchange-grid { grid-template-columns: 1fr; } .type-exchange-grid p { min-height: min(112vw, 430px); font-size: min(4.8rem, calc((100vw - 4rem) / 6.6)); } .type-detail-grid { grid-template-columns: 1fr; } .type-detail-grid article { min-height: 340px; } .type-love { min-height: 76svh; } .type-love p { /* CAMERON. is 6.318 em wide before tracking. Size against the usable viewport instead of imposing a 4rem floor that clips narrow screens. */ font-size: min(7rem, calc((100vw - 2rem) / 6.2)); line-height: 0.88; } .type-love p > span:last-child { margin-left: 0; } .type-download h2 { font-size: clamp(2.7rem, 14vw, 5rem); } .type-footer span:nth-child(2) { display: none; }}
@media (prefers-reduced-motion: reduce) { .type-orbit { animation: none; }}