:root { --ink:#151713; --paper:#eeefe7; --tint-light:#c7ff41; --tint-dark:#c7ff41; --tint:var(--tint-light); --acid:var(--tint); --muted:#6f7369; --line:#bfc2b6; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:"Manrope",sans-serif; }
.grain { position:fixed; inset:0; pointer-events:none; opacity:.22; z-index:10; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E"); }
.site-header, footer { display:flex; justify-content:space-between; align-items:center; padding:28px 4vw; }
.site-header { border-bottom:1px solid var(--line); }
.monogram { color:inherit; text-decoration:none; font:500 1rem "DM Mono",monospace; letter-spacing:-.05em; }
.dot { color:var(--tint); }
.status, footer { font:400 .7rem "DM Mono",monospace; text-transform:uppercase; letter-spacing:.08em; }
.status span { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--tint); margin-right:8px; animation:pulse 2s infinite; }
main { width:min(1440px,92vw); margin:auto; }
.hero { min-height:calc(100vh - 76px); display:flex; flex-direction:column; justify-content:center; padding:7vh 0 6vh; }
.eyebrow { margin:0 0 18px; font:500 .74rem "DM Mono",monospace; text-transform:uppercase; letter-spacing:.15em; }
h1 { margin:0; max-width:1200px; font-size:clamp(4rem,11.8vw,11.5rem); line-height:.77; letter-spacing:-.085em; font-weight:500; }
h1 em { font-family:Georgia,serif; font-weight:400; }
.hero-footer { display:grid; grid-template-columns:1fr minmax(280px,470px) auto; gap:32px; align-items:end; margin-top:9vh; }
.intro { grid-column:2; color:#40433c; font-size:clamp(1rem,1.35vw,1.25rem); line-height:1.55; margin:0; }
.scroll-cue { color:inherit; text-decoration:none; font:500 .72rem "DM Mono",monospace; text-transform:uppercase; padding-bottom:5px; border-bottom:1px solid; }
.explore { padding:15vh 0 13vh; border-top:1px solid var(--line); display:grid; grid-template-columns:38% 1fr; gap:7vw; }
.section-heading h2 { margin:0; font-family:Georgia,serif; font-weight:400; font-size:clamp(2.7rem,5vw,5.5rem); line-height:.95; letter-spacing:-.055em; }
.page-links { border-top:1px solid var(--ink); }
.page-card { position:relative; display:grid; grid-template-columns:56px 1fr auto; gap:16px; align-items:center; padding:27px 4px; border-bottom:1px solid var(--line); color:inherit; text-decoration:none; overflow:hidden; }
.page-card::before { content:""; position:absolute; inset:0; background:var(--acid); transform:translateX(-101%); transition:transform .35s ease; z-index:-1; }
.page-card:hover::before, .page-card:focus-visible::before { transform:translateX(0); }
.number { font:400 .7rem "DM Mono",monospace; }
.card-copy { display:flex; flex-direction:column; gap:7px; }
.card-copy strong { font:500 clamp(1.55rem,2.8vw,2.6rem) "Manrope",sans-serif; letter-spacing:-.04em; }
.card-copy small { color:var(--muted); font-size:.84rem; }
.page-card:hover small { color:#373a31; }
.arrow { font-size:1.5rem; transition:transform .3s; }
.page-card:hover .arrow { transform:translate(4px,-4px); }
footer { border-top:1px solid var(--line); color:var(--muted); }
.inner-page main { min-height:calc(100vh - 154px); display:grid; align-content:center; }
.inner-content { max-width:800px; padding:14vh 0; }
.back { color:var(--muted); text-decoration:none; font:500 .72rem "DM Mono",monospace; text-transform:uppercase; }
.inner-content h1 { margin:50px 0 32px; font-size:clamp(4rem,10vw,9rem); line-height:.85; }
.inner-content .lede { font:400 clamp(1.25rem,2.1vw,2rem)/1.45 Georgia,serif; max-width:650px; }
@keyframes pulse { 50% { opacity:.25; } }
@media (max-width:700px) {
  .site-header { padding:22px 5vw; } .status { font-size:.58rem; }
  main { width:90vw; } .hero { min-height:calc(100svh - 66px); padding-top:10vh; }
  h1 { font-size:clamp(3.8rem,20vw,6.5rem); line-height:.8; }
  .hero-footer { grid-template-columns:1fr; margin-top:8vh; } .intro { grid-column:auto; } .scroll-cue { justify-self:start; }
  .explore { grid-template-columns:1fr; padding:12vh 0; } .section-heading { margin-bottom:8vh; }
  .page-card { grid-template-columns:36px 1fr auto; padding:23px 2px; } .card-copy small { max-width:230px; }
  footer { align-items:flex-start; gap:18px; padding:24px 5vw; } footer p { margin:0; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before { animation:none!important; transition:none!important; } }

/* Profile-style landing page */
html { background:#fff; }
.profile-page { background:transparent; color:#1f2320; font-family:"Manrope",sans-serif; }
.dot-field { position:fixed; inset:0; z-index:0; width:100%; height:100%; pointer-events:none; }
.profile-header, .profile-main, .profile-footer { position:relative; z-index:1; }
.profile-header { width:min(1040px,90vw); margin:0 auto; min-height:76px; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:28px; border-bottom:1px solid #e7e9e5; }
.wordmark { color:#1f2320; text-decoration:none; font-size:.9rem; font-weight:700; white-space:nowrap; }
.top-nav { display:flex; justify-content:flex-end; align-items:center; gap:30px; }
.top-nav a { color:#545a54; text-decoration:none; font-size:.9rem; font-weight:500; padding:27px 0 24px; border-bottom:2px solid transparent; }
.top-nav a:hover, .top-nav a:focus-visible, .top-nav a.active { color:#1f2320; border-color:var(--tint); }
.music-player { grid-area:player; position:relative; display:grid; width:246px; grid-template-columns:46px minmax(0,1fr) 36px; align-items:center; gap:7px; height:54px; margin-top:36px; padding:4px 7px 4px 4px; border:1px solid #cbd2c9; border-radius:999px; background:#f7f8f5; overflow:hidden; box-shadow:0 5px 18px rgba(32,45,31,.08); }
.profile-page.is-inner-page .music-player { position:fixed; z-index:20; top:11px; left:50%; margin:0; transform:translateX(-50%); }
.music-audio { position:absolute; width:1px; height:1px; opacity:.01; pointer-events:none; }
.music-player button { display:grid; place-items:center; width:32px; height:32px; padding:0; border:0; border-radius:50%; background:transparent; color:#313731; font-size:.7rem; cursor:pointer; }
.music-player .music-play { width:46px; height:46px; background:var(--tint); color:#fff; font-size:1rem; box-shadow:none; }
.music-player .music-play:hover, .music-player .music-play:focus-visible { background:color-mix(in srgb,var(--tint) 82%,#fff); transform:scale(1.04); }
.music-mute svg { width:18px; height:18px; fill:currentColor; }
.music-mute svg path+path { fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.music-mute .volume-off-icon { display:none; }
.music-mute.is-muted .volume-on-icon { display:none; }
.music-mute.is-muted .volume-off-icon { display:block; }
.music-player button:hover:not(:disabled), .music-player button:focus-visible { background:#e6ebe4; }
.music-player button:disabled { cursor:wait; opacity:.4; }
.music-title { min-width:0; overflow:hidden; color:#555c55; font-size:.69rem; white-space:nowrap; text-decoration:none; }
.music-title:hover, .music-title:focus-visible { color:#202520; text-decoration:underline; text-underline-offset:3px; }
.music-title span { display:inline-block; min-width:100%; padding-left:100%; animation:music-marquee 14s linear infinite; }
@keyframes music-marquee { to { transform:translateX(-100%); } }
.profile-main { width:min(900px,90vw); margin:0 auto; }
.profile-page.is-blog-page .profile-main { width:min(1040px,90vw); }
.profile { display:grid; grid-template-columns:246px minmax(0,1fr); grid-template-areas:"avatar info" "gallery info" "player info" "social info"; column-gap:34px; align-items:start; padding:90px 0 110px; }
.avatar-wrap { display:contents; }
.avatar-button { display:block; padding:0; border:0; border-radius:30%; background:none; cursor:zoom-in; animation:avatar-float 4.8s ease-in-out infinite; }
.avatar-button { grid-area:avatar; }
.avatar-button:focus-visible { outline:3px solid var(--tint); outline-offset:4px; }
.avatar { display:block; width:246px; height:246px; object-fit:cover; object-position:center 20%; border-radius:30%; border:1px solid #dfe3dd; box-shadow:0 14px 35px rgba(33,48,32,.16); transform-style:preserve-3d; }
.avatar.is-flipping { animation:avatar-flip .68s ease-in-out; }
@keyframes avatar-float { 0%,100% { transform:translateY(0) rotate(-.4deg); } 50% { transform:translateY(-9px) rotate(.5deg); } }
@keyframes avatar-flip { 0% { transform:perspective(700px) rotateY(0); } 49% { transform:perspective(700px) rotateY(90deg); } 50% { transform:perspective(700px) rotateY(-90deg); } 100% { transform:perspective(700px) rotateY(0); } }
.photo-grid { grid-area:gallery; display:grid; width:246px; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:28px; }
.photo-grid button { aspect-ratio:1; min-width:0; padding:0; overflow:hidden; border:0; border-radius:5px; background:#e7e9e5; cursor:zoom-in; }
.photo-grid button:focus-visible { outline:3px solid var(--tint); outline-offset:2px; }
.photo-grid img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .2s ease,opacity .2s ease; }
.photo-grid button:hover img { transform:scale(1.05); opacity:.9; }
.profile-info { grid-area:info; padding-top:10px; }
.profile-info h1 { margin:0; max-width:none; white-space:nowrap; font:700 clamp(2rem,4.7vw,4.2rem)/1.08 "Manrope",sans-serif; letter-spacing:-.055em; }
.profile-location { margin:10px 0 22px; color:#7b827b; font-size:.95rem; }
.social-links { grid-area:social; display:flex; width:246px; flex-wrap:wrap; gap:8px; margin:24px 0 0; }
.social-links a { display:inline-flex; align-items:center; gap:7px; padding:7px 11px; border:1px solid var(--tint); border-radius:999px; background:transparent; color:var(--tint); text-decoration:none; font-size:.76rem; font-weight:600; }
.social-links a span { display:inline-grid; place-items:center; min-width:15px; color:inherit; font-weight:700; }
.social-links a:hover, .social-links a:focus-visible { border-color:var(--tint); background:transparent; color:var(--tint); }
.bio { max-width:650px; margin:0 0 36px; color:#343934; font-size:1rem; line-height:1.72; }
.bio p { margin:0 0 1.25em; }
.bio p:last-child { margin-bottom:0; }
.bio-more > p:first-child { margin-top:0; }
.bio-toggle { display:none; }
.bio a { color:inherit; font-weight:600; text-decoration-color:#9aa599; text-underline-offset:3px; }
.bio a:hover, .bio a:focus-visible { text-decoration-color:#1f2320; }
.marker-highlight { padding:0 .1em; margin:0 -.1em; background:linear-gradient(176deg,transparent 12%,color-mix(in srgb,var(--tint) 45%,transparent) 12%,color-mix(in srgb,var(--tint) 30%,transparent) 84%,transparent 84%); box-decoration-break:clone; -webkit-box-decoration-break:clone; }
.profile-footer { width:min(1040px,90vw); margin:0 auto; padding:24px 0 32px; border-top:1px solid #e7e9e5; color:#858b85; font:500 .76rem "Manrope",sans-serif; text-transform:none; letter-spacing:0; }
.theme-toggle { display:flex; align-items:center; gap:8px; padding:0; border:0; background:none; color:inherit; font:inherit; cursor:pointer; }
.theme-toggle:hover, .theme-toggle:focus-visible { color:#1f2320; }
.theme-icon { display:block; width:18px; height:18px; border:1px solid currentColor; border-radius:50%; background:linear-gradient(90deg,currentColor 50%,transparent 50%); transform:rotate(-20deg); }
.theme-label { min-width:62px; text-align:left; }
.page-view[hidden] { display:none; }
.content-view { min-height:calc(100vh - 170px); padding:90px 0 120px 280px; }
.page-label { margin:0 0 14px; color:#7b827b; font-size:.78rem; font-weight:600; text-transform:uppercase; letter-spacing:.09em; }
.content-view h1 { margin:0 0 28px; font:700 clamp(3rem,7vw,5.5rem)/1 "Manrope",sans-serif; letter-spacing:-.06em; }
.content-view p { max-width:620px; color:#4e554e; font-size:1rem; line-height:1.7; }
.content-view .content-lede { color:#292e29; font-size:1.25rem; line-height:1.55; }
.content-view[data-page="blog"] { padding-top:0; padding-left:0; }
.blog-header { padding:52px 26px 54px; }
.blog-header h1 { color:#1f2320; letter-spacing:.08em; }
.blog-header .content-lede { max-width:none; margin:24px 0 0; color:#292e29; white-space:pre-line; }
.blog-content { width:100%; max-width:none; margin-top:0; }
.blog-index-layout { width:100%; margin:0 auto; border:1px solid #d9ddd8; border-radius:12px; overflow:hidden; background:rgba(255,255,255,.32); }
.blog-split-layout { --article-width:min(1040px,calc(100vw - 496px)); position:relative; min-height:620px; }
.blog-sidebar { position:absolute; top:0; right:calc(50% + min(520px,calc(50vw - 248px)) + 28px); width:220px; min-width:0; max-height:calc(100vh - 120px); overflow:auto; border:1px solid #d9ddd8; border-radius:12px; background:rgba(255,255,255,.32); }
.blog-sidebar-title { margin:0; padding:18px; font-size:1rem; line-height:1.2; letter-spacing:-.01em; }
.blog-sidebar-title a { color:#222722; text-decoration:none; }
.blog-sidebar-title a:hover, .blog-sidebar-title a:focus-visible { color:var(--tint); text-decoration:underline; text-underline-offset:4px; }
.blog-split-layout .blog-post { width:var(--article-width); min-width:0; margin:0 auto; padding:34px clamp(26px,4vw,54px) 60px; }
.blog-status { padding:22px 0; color:#6f766f; }
.blog-error { padding:18px 20px; border:1px solid #d7b9a9; border-radius:8px; background:#fff5ef; color:#74432d!important; }
.blog-list { border-top:1px solid #d9ddd8; }
.blog-card { border-bottom:1px solid #d9ddd8; }
.blog-card { padding:30px 4px; }
.blog-index-layout .blog-card { padding-right:28px; padding-left:28px; }
.blog-card-link { display:block; color:inherit; text-decoration:none; }
.blog-card-image { display:block; width:100%; max-height:280px; margin-bottom:22px; border-radius:9px; object-fit:cover; }
.blog-card-link:hover h2, .blog-card-link:focus-visible h2 { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:5px; }
.blog-card.is-active { background:color-mix(in srgb,var(--tint) 12%,transparent); box-shadow:inset 3px 0 var(--tint); }
.blog-sidebar .blog-card { padding:20px 18px; }
.blog-sidebar .blog-card-image { max-height:120px; margin-bottom:14px; }
.blog-sidebar .blog-card h2 { font-size:1.12rem; letter-spacing:-.02em; }
.blog-sidebar .blog-card p { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; font-size:.84rem; line-height:1.5; }
.blog-sidebar .blog-read-more { display:none; }
.blog-card-meta { margin:13px 0 0!important; color:#737b73!important; font-size:.76rem!important; line-height:1.4!important; }
.blog-card-date-line::before { content:" · "; }
.blog-sidebar .blog-card-author-line,
.blog-sidebar .blog-card-date-line { display:block; }
.blog-sidebar .blog-card-date-line { margin-top:4px; }
.blog-sidebar .blog-card-date-line::before { content:none; }
.blog-card h2, .blog-post h2 { margin:8px 0 10px; color:#222722; font-size:clamp(1.6rem,3vw,2.35rem); line-height:1.15; letter-spacing:-.035em; }
.blog-card p { margin:0 0 14px; }
.blog-date, .blog-time, .blog-read-more, .blog-back { color:#737b73; font-size:.76rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.blog-card .blog-read-more,
.blog-card-link:visited .blog-read-more { color:var(--tint)!important; }
.blog-back { display:inline-block; margin-bottom:40px; color:#526352; text-decoration:none; }
.blog-post header { padding-bottom:0; border-bottom:0; }
.blog-post-image { display:block; width:calc(100% + 36px); max-width:none; max-height:560px; margin:0 -18px 28px; border-radius:10px; object-fit:cover; }
.blog-post-meta { margin:6px 0 10px; }
.blog-author { color:inherit; text-underline-offset:3px; }
.blog-post h2 { margin-bottom:4px; }
.blog-body { padding-top:10px; }
.blog-body > :first-child { margin-top:0; }
.blog-body p, .blog-body blockquote, .blog-body li { max-width:none; font:400 1.08rem/1.8 Georgia,serif; }
.blog-body h3, .blog-body h4, .blog-body h5, .blog-body h6 { margin:42px 0 12px; letter-spacing:-.025em; }
.blog-body h3 { font-size:1.6rem; }
.blog-body h4 { font-size:1.35rem; }
.blog-body ul { margin:22px 0; padding-left:26px; }
.blog-body li { padding-left:5px; }
.blog-body blockquote { margin:34px 0; padding:4px 0 4px 24px; border-left:3px solid var(--tint); color:#465046; font-style:italic; }
.blog-body a { color:inherit; text-underline-offset:3px; }
.blog-body code { padding:.12em .35em; border-radius:4px; background:#e4e8e1; font:500 .9em "DM Mono",monospace; }
.blog-body pre { max-width:100%; margin:28px 0; padding:18px; overflow:auto; border-radius:8px; background:#202520; color:#eef2ec; }
.blog-body pre code { padding:0; background:none; color:inherit; line-height:1.6; }
.blog-body hr { margin:42px 0; border:0; border-top:1px solid #d9ddd8; }
.photo-lightbox { width:100vw; max-width:none; height:100vh; max-height:none; margin:0; padding:clamp(24px,5vw,64px); border:0; background:rgba(8,10,8,.88); overflow:hidden; touch-action:none; }
.photo-lightbox[open] { display:grid; place-items:center; }
.photo-lightbox::backdrop { background:rgba(8,10,8,.74); backdrop-filter:blur(4px); }
.photo-lightbox img { display:block; grid-area:1/1; max-width:calc(100vw - 140px); max-height:calc(100vh - 100px); width:auto; height:auto; object-fit:contain; border-radius:4px; box-shadow:0 20px 70px rgba(0,0,0,.4); }
.photo-lightbox .lightbox-image, .photo-lightbox .lightbox-adjacent-image { will-change:transform; }
.photo-lightbox .lightbox-adjacent-image { opacity:0; pointer-events:none; }
.lightbox-close { position:fixed; z-index:2; top:22px; right:26px; display:grid; place-items:center; width:46px; height:46px; padding:0; border:1px solid rgba(255,255,255,.55); border-radius:50%; background:rgba(0,0,0,.25); color:#fff; font:300 2rem/1 Arial,sans-serif; cursor:pointer; }
.lightbox-close:hover, .lightbox-close:focus-visible { background:#fff; color:#171917; }
.lightbox-arrow { position:fixed; z-index:2; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:52px; height:64px; padding:0 0 7px; border:0; border-radius:8px; background:rgba(0,0,0,.3); color:#fff; font:300 3.5rem/1 Arial,sans-serif; cursor:pointer; }
.lightbox-arrow:hover, .lightbox-arrow:focus-visible { background:rgba(255,255,255,.95); color:#171917; }
.lightbox-prev { left:22px; }
.lightbox-next { right:22px; }
.lightbox-count { position:fixed; bottom:18px; left:50%; transform:translateX(-50%); margin:0; color:#fff; font-size:.78rem; letter-spacing:.08em; }

html[data-theme="dark"] { --tint:var(--tint-dark); color-scheme:dark; background:#121512; }
html[data-theme="dark"] .profile-page { color:#edf0eb; }
html[data-theme="dark"] .profile-header { border-color:#343a34; }
html[data-theme="dark"] .wordmark { color:#edf0eb; }
html[data-theme="dark"] .top-nav a { color:#abb2aa; }
html[data-theme="dark"] .top-nav a:hover,
html[data-theme="dark"] .top-nav a:focus-visible,
html[data-theme="dark"] .top-nav a.active { color:#fff; border-color:#e9ede7; }
html[data-theme="dark"] .music-player { border-color:#3e463e; background:#1d211d; }
html[data-theme="dark"] .music-player button { color:#e5eae3; }
html[data-theme="dark"] .music-player .music-play { background:var(--tint); color:#172016; }
html[data-theme="dark"] .music-player .music-play:hover,
html[data-theme="dark"] .music-player .music-play:focus-visible { background:#e6f6b5; }
html[data-theme="dark"] .music-player button:hover:not(:disabled),
html[data-theme="dark"] .music-player button:focus-visible { background:#343a34; }
html[data-theme="dark"] .music-title { color:#b6beb5; }
html[data-theme="dark"] .music-title:hover,
html[data-theme="dark"] .music-title:focus-visible { color:#fff; }
html[data-theme="dark"] .profile-location,
html[data-theme="dark"] .page-label { color:#9da59d; }
html[data-theme="dark"] .social-links a { border-color:var(--tint); background:transparent; color:var(--tint); }
html[data-theme="dark"] .social-links a span { color:inherit; }
html[data-theme="dark"] .social-links a:hover,
html[data-theme="dark"] .social-links a:focus-visible { border-color:var(--tint); background:transparent; color:var(--tint); }
html[data-theme="dark"] .bio { color:#d2d7d1; }
html[data-theme="dark"] .bio a { color:#f0f5ee; text-decoration-color:#879286; }
html[data-theme="dark"] .bio a:hover,
html[data-theme="dark"] .bio a:focus-visible { text-decoration-color:#fff; }
html[data-theme="dark"] .marker-highlight { color:#f1f5ec; background:linear-gradient(176deg, transparent 12%, #405522 12%, #34491d 84%, transparent 84%); }
html[data-theme="dark"] .avatar,
html[data-theme="dark"] .photo-grid button { border-color:#3e463e; background:#252a25; }
html[data-theme="dark"] .content-view h1 { color:#edf0eb; }
html[data-theme="dark"] .content-view p { color:#b8c0b7; }
html[data-theme="dark"] .content-view .content-lede { color:#e1e6df; }
html[data-theme="dark"] .blog-list,
html[data-theme="dark"] .blog-card,
html[data-theme="dark"] .blog-post header { border-color:#343a34; }
html[data-theme="dark"] .blog-index-layout,
html[data-theme="dark"] .blog-sidebar { border-color:#343a34; background:rgba(20,24,20,.4); }
html[data-theme="dark"] .blog-card.is-active { background:color-mix(in srgb,var(--tint) 15%,transparent); box-shadow:inset 3px 0 var(--tint); }
html[data-theme="dark"] .blog-card h2,
html[data-theme="dark"] .blog-post h2 { color:#edf0eb; }
html[data-theme="dark"] .blog-sidebar-title a { color:#edf0eb; }
html[data-theme="dark"] .blog-sidebar-title a:hover,
html[data-theme="dark"] .blog-sidebar-title a:focus-visible { color:var(--tint); }
html[data-theme="dark"] .blog-date { color:#9da59d; }
html[data-theme="dark"] .blog-back { color:#c9d9a4; }
html[data-theme="dark"] .blog-body blockquote { color:#c9d0c8; }
html[data-theme="dark"] .blog-body code { background:#2b312b; }
html[data-theme="dark"] .blog-body pre { background:#090b09; }
html[data-theme="dark"] .blog-body hr { border-color:#343a34; }
html[data-theme="dark"] .blog-error { border-color:#704c3b; background:#2b211c; color:#efc5ad!important; }
html[data-theme="dark"] .profile-footer { border-color:#343a34; color:#969e96; }
html[data-theme="dark"] .theme-toggle:hover,
html[data-theme="dark"] .theme-toggle:focus-visible { color:#fff; }
@media (max-width:1024px) {
  .profile-header { position:relative; min-height:auto; padding:20px 0 0; grid-template-columns:1fr; justify-items:center; align-items:start; gap:15px; }
  .wordmark { justify-self:center; text-align:center; }
  .top-nav { width:100%; justify-content:space-between; gap:0; }
  .top-nav a { flex:1; padding:0 0 18px; text-align:center; }
  .profile { grid-template-columns:1fr; grid-template-areas:"avatar" "name" "location" "player" "bio" "gallery" "social"; row-gap:0; padding:48px 0 72px; }
  .avatar-button { justify-self:center; } .avatar { width:150px; height:150px; }
  .profile-info { display:contents; }
  .profile-info h1 { grid-area:name; margin-top:26px; text-align:center; font-size:clamp(1.75rem,8vw,2.7rem); }
  .profile-location { grid-area:location; text-align:center; margin-bottom:14px; }
  .music-player,
  .profile-page.is-inner-page .music-player { grid-area:auto; position:relative; top:auto; left:auto; height:46px; grid-template-columns:38px minmax(0,1fr) 32px; justify-self:center; margin:0; padding:3px 6px 3px 3px; transform:none; }
  .music-player .music-play { width:38px; height:38px; font-size:.82rem; }
  .bio { grid-area:bio; margin-top:15px; }
  .bio-intro { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:1; margin-bottom:7px!important; }
  .bio-more { display:none; }
  .bio.is-expanded .bio-intro { display:block; overflow:visible; }
  .bio.is-expanded .bio-more { display:block; }
  .bio-toggle { display:inline-block; padding:0; border:0; background:none; color:var(--tint); font:600 .85rem "Manrope",sans-serif; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
  .photo-grid { width:100vw; justify-self:center; margin-top:0; margin-left:calc(50% - 50vw); gap:3px; }
  .photo-grid button { border-radius:0; }
  .social-links { width:100%; justify-self:stretch; justify-content:center; }
  .content-view { min-height:calc(100vh - 190px); padding:60px 0 90px; }
  .content-view[data-page="blog"] { padding-top:0; }
  .blog-header { padding:36px 20px 42px; }
  .blog-header .content-lede { font-size:.9rem; }
  .blog-split-layout { display:block; }
  .blog-sidebar { position:static; width:100%; max-height:none; border:0; border-radius:0; background:transparent; }
  .blog-sidebar-title { padding:24px 0; }
  .blog-sidebar .blog-list { display:none; }
  .blog-split-layout .blog-post { width:100%; padding:0; }
  .blog-post-image { width:100%; margin-right:0; margin-left:0; }
  .photo-lightbox { padding:70px 14px 62px; }
  .photo-lightbox img { max-width:calc(100vw - 28px); max-height:calc(100vh - 132px); }
  .lightbox-arrow { top:auto; bottom:14px; width:48px; height:42px; transform:none; font-size:2.5rem; }
  .lightbox-prev { left:16px; } .lightbox-next { right:16px; }
}
html[data-theme="dark"] .bio-toggle { color:var(--tint); }
