/* Lucas Lab — The Shape of Curiosity. A DOM-first, progressively enhanced lab. */
@font-face{font-family:"Space Grotesk";src:url("./fonts/space-grotesk.woff2") format("woff2");font-style:normal;font-weight:300 700;font-display:swap}
:root {
  --paper:#faf5ef; --sheet:#fffaf5; --ink:#29243b; --muted:#706778;
  --green:#64529c; --green-dark:#191429; --line:#ddd2df; --soft:#eee5f5;
  --lime:#ffd479; --violet:#c5b3ff; --red:#ad553f; --amber:#76582c;
  --sans:Arial,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  --display:"Space Grotesk",var(--sans);
  --serif:var(--sans); --mono:Consolas,"SFMono-Regular",monospace;
  color-scheme:light; color:var(--ink); background:var(--paper); font-family:var(--sans);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px;scrollbar-gutter:stable}
html[data-art-viewer-state=open]{overflow:hidden;background:#0d1120}
body{margin:0;min-width:300px;background:var(--paper);line-height:1.7}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
button,a,input{-webkit-tap-highlight-color:transparent}
button,a{touch-action:manipulation}
svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
[hidden]{display:none!important}
:focus-visible{outline:2px solid #8063bf;outline-offset:5px}
::selection{color:var(--ink);background:var(--lime)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link{position:fixed;z-index:30;top:-80px;left:20px;padding:12px 20px;background:var(--lime);color:var(--ink)}
.skip-link:focus{top:16px}
/* Native fragment focus marks the chapter heading without framing the whole section. */
.lab-home section[tabindex="-1"]:focus-visible{outline:none}
.lab-home section[tabindex="-1"]:focus-visible h2{outline:2px solid #8063bf;outline-offset:8px}

/* A shared, pared-back masthead. */
.home-header,.site-header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px max(40px,calc((100% - 1280px)/2));background:var(--green-dark);color:var(--sheet);border-bottom:1px solid #ffffff24}
.brand{display:flex;align-items:center;gap:13px;font-family:var(--display);font-size:23px;font-weight:600;line-height:1.2;letter-spacing:-.045em;flex-shrink:0}
.brand-mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid #e8bbfa77;color:var(--lime);font:500 28px/.9 var(--display);border-radius:50%;background:linear-gradient(135deg,#bb76ef33,#ff86652b)}
.brand small{display:block;margin-top:7px;font:8px/1.4 var(--mono);letter-spacing:.13em;color:#c4b9d2}
.home-header nav{display:flex;align-items:center;gap:30px;font-size:12px}
.home-header nav a{display:inline-flex;align-items:center;position:relative;min-height:44px}
.home-header nav a::after{content:"";position:absolute;bottom:5px;left:0;width:0;height:1px;background:var(--lime);transition:width .25s}
.home-header nav a:hover::after{width:100%}
.home-header nav .home-owner-entry{border:1px solid #ffffff40;border-radius:24px;padding:0 19px;margin-left:12px}
.home-header nav .home-owner-entry::after{display:none}
.home-header nav .home-owner-entry:hover{color:var(--ink);background:var(--lime);border-color:var(--lime)}
.header-right{display:flex;align-items:center;justify-content:flex-end;gap:22px}
.local-label,.owner-label{font-size:10px;color:#bdc5b7}
.local-label{padding:4px 8px;border:1px dashed #ffffff3d;border-radius:2px}
.view-switch,.header-status{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
.view-switch:hover,.header-status:hover{color:var(--lime)}
.portal-signout{margin:0}
.portal-signout button{padding:9px 15px;min-height:44px;color:var(--sheet);background:transparent;border:1px solid #ffffff40;border-radius:24px;font-size:12px}
.portal-signout button:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.eyebrow{font:10px/1.6 var(--mono);letter-spacing:.08em;margin:0 0 18px;color:var(--muted)}
.eyebrow>span{padding:0 10px;color:var(--lime)}
.action{display:inline-flex;justify-content:space-between;align-items:center;gap:27px;min-height:50px;font-size:13px;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.action>span:last-child{display:inline-block;font-family:var(--sans);font-size:19px;transition:transform .25s}
.action:hover>span:last-child{transform:translate(2px,-2px)}
.action-primary{border:1px solid var(--ink);border-radius:28px;padding:12px 23px;background:var(--ink);color:var(--sheet)}
.action-primary:hover{background:var(--green);border-color:var(--green)}
.action-text{padding:10px 0;border-bottom:1px solid transparent}
.action-text:hover{border-bottom-color:currentColor}
.preview-pill{padding:1px 5px;border:1px solid currentColor;font-size:10px;line-height:1.5}

/* A living, original ribbon sculpture, with an SVG poster underneath. */
.sculpture{position:relative;min-width:0;isolation:isolate;aspect-ratio:1.13;overflow:clip}
.sculpture-poster,.sculpture-canvas{position:absolute;inset:0;width:100%;height:100%;transition:opacity .45s;stroke:none;pointer-events:none}
.sculpture-poster{opacity:1}
.sculpture-canvas{opacity:0;display:block}
.sculpture[data-ready=true] .sculpture-canvas{opacity:1}
.sculpture[data-ready=true] .sculpture-poster{opacity:0}
.sculpture-halo{position:absolute;inset:3%;z-index:-1;background:radial-gradient(ellipse at 65% 33%,#ff946d26,transparent 50%),radial-gradient(ellipse at 28% 60%,#8c66fa32,transparent 55%),radial-gradient(ellipse at 72% 79%,#5dd8d61b,transparent 45%);border-radius:50%}
.sculpture-orbits{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#dbc6fa30;stroke-width:.8;pointer-events:none;animation:orbit-drift 22s ease-in-out infinite alternate}
.sculpture-orbits circle{fill:#ffc38e;stroke:none}
.sculpture-orbits circle:last-child{fill:#82e8d9}
.sculpture-caption{position:absolute;bottom:6%;left:50%;transform:translateX(-50%);white-space:nowrap;font:9px var(--mono);letter-spacing:.18em;color:#c8b5de}
.sculpture-cross{position:absolute;font:22px var(--sans);color:#ffc38e}
.sculpture-cross-a{left:8%;top:16%}
.sculpture-cross-b{right:7%;bottom:19%;color:#80dcd6;font-size:16px}
.motion-toggle{border:1px solid #ffffff30;color:#cbbdd7;background:#ffffff05;border-radius:24px;min-height:44px;padding:7px 14px;font-size:10px;white-space:nowrap}
.motion-toggle span{margin-left:14px;color:var(--sheet)}
.motion-toggle:hover{border-color:var(--lime)}
.motion-toggle:disabled{opacity:.65;cursor:default}
.intro-main .motion-toggle{margin-top:18px;color:var(--ink);border-color:var(--line);background:var(--sheet)}
.intro-main .motion-toggle span{color:var(--ink)}
html[data-motion=paused]{scroll-behavior:auto}
html[data-motion=paused] *,html[data-motion=paused] *::before,html[data-motion=paused] *::after{animation:none!important;transition:none!important}
html[data-motion=paused] .art-scroll-plane{scale:none;translate:none}
html[data-motion=paused] .book-samples{scroll-behavior:auto}
html[data-motion=paused]::view-transition-group(*),html[data-motion=paused]::view-transition-image-pair(*),html[data-motion=paused]::view-transition-old(*),html[data-motion=paused]::view-transition-new(*){animation:none!important}

/* Public cover: painted artwork and typography share the visual hierarchy. */
.lab-home{background:var(--green-dark)}
.home-shell{width:100%;margin:0}
.home-index{--chapter-accent:#7351a0;--chapter-wash:#eedfff;--chapter-progress:0;position:sticky;top:0;z-index:12;display:flex;align-items:center;justify-content:center;gap:28px;padding:7px 22px;background:var(--paper);border-bottom:1px solid var(--line)}
.home-index[data-chapter="open-content"]{--chapter-accent:#93624a;--chapter-wash:#f3e5d8}
.home-index[data-chapter="projects"]{--chapter-accent:#346f76;--chapter-wash:#dcefed}
.home-index[data-chapter="about"]{--chapter-accent:#536c91;--chapter-wash:#e1e9f4}
.home-index[data-chapter="access-guide"]{--chapter-accent:#80628f;--chapter-wash:#eee2f4}
.home-index[data-chapter="continue-reading"]{--chapter-accent:#97552e;--chapter-wash:#f4dfc8}
.home-index>span{font:9px var(--mono);letter-spacing:.04em;color:var(--muted);margin-right:8px}
.home-index>a{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:12px;padding:4px 10px;border-radius:23px;transition:background-color .35s,color .35s}
.home-index>a:hover{background:var(--soft)}
.home-index>a[aria-current="location"]{background:var(--chapter-wash);color:var(--chapter-accent)}
.home-index>a[aria-current="location"] small{color:var(--chapter-accent)}
.home-index>a[aria-current="location"]::after{content:"";position:absolute;left:10px;right:10px;bottom:5px;height:2px;border-radius:2px;background:var(--chapter-accent);transform:scaleX(var(--chapter-progress));transform-origin:left;pointer-events:none}
.home-index small{font:8px var(--mono);color:#86709a}
.lab-home :is(#open-content,#projects,#about,#access-guide,#continue-reading){scroll-margin-top:80px}
.home-hero{display:grid;grid-template-columns:1.03fr 1fr;position:relative;max-width:1408px;margin:auto;padding:43px 64px 30px;min-height:800px;color:var(--sheet);background:radial-gradient(ellipse at 90% 20%,#ac5ee516,transparent 57%),radial-gradient(ellipse at 3% 86%,#fa927211,transparent 55%)}
.cover-meta{grid-column:1/-1;grid-row:1;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px}
.cover-meta .eyebrow{color:#c9b9d6;margin:0;font-size:10px}
.cover-meta>span{font:9px var(--mono);letter-spacing:.16em;color:#b09bc3}
.hero-copy{grid-column:1;grid-row:2;position:relative;z-index:2;min-width:0;align-self:center;padding-bottom:14px}
.hero-copy h1{font:500 clamp(104px,12vw,184px)/.9 var(--display);letter-spacing:-.065em;text-transform:uppercase;margin:0 0 32px}
.hero-word{display:block}
.hero-word:last-child{color:#ffc1a4;background:linear-gradient(110deg,#ffc979 6%,#ff9c94 48%,#c9a3ff 88%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.title-dot{color:var(--lime)}
/* The title changes optical weight only while the reader leaves the cover. */
@supports (animation-timeline:view()) and (animation-range:exit 0% exit 100%){
  @media(prefers-reduced-motion:no-preference){
    .home-hero{view-timeline-name:--hero-type;view-timeline-axis:block}
    .hero-word:first-child{animation:hero-weight-grow 1s linear both;animation-timeline:--hero-type;animation-range:exit 0% exit 100%}
    .hero-word:last-child{animation:hero-weight-lighten 1s linear both;animation-timeline:--hero-type;animation-range:exit 0% exit 100%}
  }
}
@keyframes hero-weight-grow{from{font-weight:470}to{font-weight:580}}
@keyframes hero-weight-lighten{from{font-weight:550}to{font-weight:480}}
.hero-statement{font-size:27px;font-weight:400;line-height:1.55;letter-spacing:-.04em;margin:27px 0 0}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:28px;margin-top:28px}
.hero-actions .action-primary{background:#ffb099;border-color:#ffb099;color:var(--ink);min-width:172px}
.hero-actions .action-primary:hover{background:var(--sheet);border-color:var(--sheet)}
.hero-actions .action-text{color:#dacfe8;font-size:12px}
.gallery-image{display:block;width:100%;height:100%;object-fit:cover}
.art-scroll-plane{position:relative;display:block;width:100%;height:100%;transform-origin:center}
.art-refraction-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;pointer-events:none;z-index:1}
@supports (animation-timeline:view()) and (animation-range:cover 0% cover 100%){
  @media(prefers-reduced-motion:no-preference){
    .artwork-link{view-timeline-name:--art-depth;view-timeline-axis:block}
    .art-scroll-plane{scale:1.08;animation:art-scroll-depth 1s linear both;animation-timeline:--art-depth;animation-range:cover 0% cover 100%}
  }
}
@keyframes art-scroll-depth{from{translate:0 -10px}to{translate:0 10px}}
.artwork-link{position:relative;display:block;width:100%;height:100%;overflow:clip;cursor:default;isolation:isolate}
.artwork-link::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 40%,#ffe3bc22,transparent 65%);transform:translate(var(--art-glow-x,0px),var(--art-glow-y,0px));transition:opacity .5s}
html[data-art-motion=active] .artwork-link:hover::after{opacity:1}
.artwork-open{position:absolute;z-index:2;right:17px;bottom:53px;display:inline-flex;align-items:center;gap:15px;min-height:35px;padding:7px 13px;border:1px solid #fff8ef45;border-radius:22px;color:#fff8ef;background:#132333a6;backdrop-filter:blur(10px);font-size:10px;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s;pointer-events:none}
.artwork-open>span{font-size:16px}
.artwork-link:hover .artwork-open,.artwork-link:focus-visible .artwork-open{opacity:1;transform:none}
.artwork-link:focus-visible{outline:2px solid var(--lime);outline-offset:-5px}
@media(hover:none),(pointer:coarse){.artwork-open{opacity:1;transform:none}}
.home-hero>.hero-art{grid-column:2;grid-row:2;position:relative;align-self:center;min-width:0;width:100%;margin:0;aspect-ratio:1;overflow:clip;border-radius:4px;background:#14202c;border:1px solid #dbc3a32b}
.hero-art::after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#06142188);pointer-events:none}
.hero-art figcaption{position:absolute;z-index:1;bottom:19px;left:23px;right:23px;display:flex;justify-content:space-between;align-items:center;font:8px var(--mono);letter-spacing:.14em;color:#f7d7aa}
.hero-art figcaption>span{font:18px var(--sans)}
.hero-art figcaption>span.hero-art-title{font-size:16px;letter-spacing:.04em}
.hero-art figcaption>small{font:9px var(--sans);letter-spacing:.04em}
@media(min-width:1060px){
  .lab-home .home-hero{grid-template-columns:minmax(0,1fr);min-height:clamp(590px,calc(100svh - 96px),820px);padding-top:28px;padding-bottom:22px;isolation:isolate;overflow:clip}
  .home-hero .cover-meta,.home-hero .cover-bottom{position:relative;z-index:2}
  .home-hero .hero-copy{width:52%;padding-top:12px;padding-bottom:12px}
  .home-hero .hero-copy h1{font-size:min(clamp(112px,12vw,174px),18svh);margin-bottom:20px}
  .home-hero .hero-statement{font-size:clamp(22px,2vw,27px);line-height:1.5;margin-top:20px}
  .home-hero .hero-actions{margin-top:22px}
  .home-hero .cover-meta{margin-bottom:18px}
  .home-hero .cover-bottom{margin-top:22px;padding-top:18px}
  .lab-home .home-hero>.hero-art{grid-area:auto;position:absolute;inset:0 0 0 auto;width:min(74%,clamp(590px,calc(100svh - 96px),820px));height:100%;aspect-ratio:auto;border:0;border-radius:0;background:transparent;mask-image:linear-gradient(to right,transparent 0%,#000 36%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 36%)}
  .home-hero>.hero-art .gallery-image{object-fit:contain;object-position:100% 50%}
  .home-hero .hero-art figcaption{left:auto;right:36px;bottom:110px;width:205px}
  .home-hero .hero-art .artwork-open{right:36px;bottom:152px}
}
.cover-bottom{grid-column:1/-1;grid-row:3;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:26px;margin-top:38px;border-top:1px solid #ffffff22}
.hero-description{font-size:12px;line-height:1.9;color:#bcb0c9;margin:0}
.cover-label{text-align:right;font:10px/1.9 var(--mono);letter-spacing:.06em;color:#bcb0c9;margin-left:auto}
.cover-next{display:inline-flex;align-items:center;gap:14px;min-height:44px;font:11px/1.5 var(--sans);letter-spacing:.02em;text-align:left;color:#f3dbc2}
.cover-next>span:last-child{font:18px var(--sans)}
.cover-next:hover{color:#fff8ef}
.cover-next:focus-visible{outline:1px solid #ffb099;outline-offset:5px}
.home-open,.home-projects,.home-about{padding-inline:max(40px,calc((100% - 1200px)/2))}
.home-open{background:var(--paper);padding-top:74px;padding-bottom:30px;scroll-margin-top:0}
.home-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:31px}
.home-section-head .eyebrow{margin-bottom:11px;color:#8e7093}
.home-section-head h2{margin:0;font-size:38px;font-weight:500;line-height:1.3;letter-spacing:-.06em}
.home-section-head>p{margin:0 0 4px;font-size:12px;color:var(--muted)}
.quiet-label{font-size:11px;display:flex;align-items:center;gap:9px;color:var(--ink);padding:4px 10px;border:1px solid var(--line);border-radius:18px}
.quiet-label::before{content:"↗"}
.reading-feature{--ink:#263932;--muted:#556459;--line:#bbc4b8;--reading-display:"Noto Serif CJK SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;display:grid;grid-template-columns:1.08fr 1fr;background:#f6efe2;color:var(--ink);border-radius:14px;overflow:clip}
.reading-art{position:relative;min-height:435px;background:#173342;color:var(--sheet);overflow:clip}
.reading-art>.artwork-link{position:absolute;inset:0}
.reading-art .gallery-image{object-fit:contain;width:88%;margin-inline:auto}
.reading-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#13253166,transparent 38%,transparent 60%,#122737a6);pointer-events:none}
.reading-annotation{position:absolute;z-index:1;top:26px;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;gap:18px;font:8px/1.5 var(--mono);letter-spacing:.09em;color:#fff6e7}
.reading-caption{position:absolute;z-index:1;bottom:23px;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:14px;border-top:1px solid #fff5e74d;font-size:10px;line-height:1.6;color:#fff6e7}
.reading-annotation>.reading-art-title{font:15px var(--sans);letter-spacing:.04em}
.reading-caption>span:last-child{font-size:9px;letter-spacing:.06em;white-space:nowrap}
.reading-copy{align-self:center;padding:36px 44px}
.reading-copy .eyebrow{color:var(--muted);font-size:9px}
.reading-copy h3{font-family:var(--reading-display);font-size:44px;font-weight:400;line-height:1.5;letter-spacing:-.03em;margin:0 0 20px}
.reading-copy>p:not(.eyebrow){font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 22px}
.reading-copy>small{display:block;max-width:29em;font-size:11px;line-height:1.8;color:var(--muted);margin-top:19px}
.reading-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0 0 24px}
.reading-paths>a{--path-tone:#80533b;display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0;min-height:66px;padding:9px 0;border-top:2px solid var(--path-tone);color:var(--path-tone)}
.reading-paths>a[data-reading-path=thought]{--path-tone:#405579}
.reading-paths>a[data-reading-path=literature]{--path-tone:#376c65}
.reading-paths>a>span{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:12px;line-height:1.6}
.reading-paths>a>span>span{font-size:14px}
.reading-paths small{font-size:11px;line-height:1.6;color:var(--muted)}
.reading-paths>a:hover{color:var(--ink);border-color:var(--ink)}
.reading-paths>a:focus-visible{outline-color:var(--path-tone);outline-offset:4px}
.sample-shelf{margin-top:36px}
.sample-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:19px}
.sample-heading h3{font-size:19px;font-weight:500;letter-spacing:-.03em;margin:0;scroll-margin-top:80px}
.sample-heading p,.sample-source{font-size:11px;color:var(--muted);margin:0}
.shelf-gesture-hint{display:none}
.shelf-controls{display:none}
.book-samples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.book-samples:focus-visible{outline:2px solid #8063bf;outline-offset:4px}
.book-samples:has(.sample-reading-guide[open]){align-items:start}
.book-sample{--sample-accent:#8a608c;display:flex;flex-direction:column;min-width:0;color:var(--ink);background:var(--sheet);border:1px solid var(--line);border-radius:12px;overflow:clip}
.book-sample[id]{scroll-margin-top:80px}
.book-sample:target{border-color:var(--sample-accent);box-shadow:inset 0 0 0 1px var(--sample-accent)}
.book-sample[tabindex="-1"]:focus-visible{outline:none}
.book-sample[tabindex="-1"]:focus-visible h4{text-decoration:underline;text-decoration-color:var(--sample-accent);text-decoration-thickness:2px;text-underline-offset:.25em}
.book-sample[data-tone=history]{--ink:#362a22;--muted:#705542;--line:#d4b99a;--sample-accent:#88441e;background:#fff0d8}
.book-sample[data-tone=thought]{--ink:#fff0ce;--muted:#cdd7e7;--line:#4b586e;--sample-accent:#e7bf79;background:#1e2a40}
.book-sample[data-tone=literature]{--ink:#183638;--muted:#476264;--line:#b3cac9;--sample-accent:#2e6262;background:#e4efeb}
.sample-art{position:relative;isolation:isolate;width:100%;aspect-ratio:1.55;margin:0;background:#243b42;overflow:clip}
.sample-art>.artwork-link{position:absolute;inset:0}
.sample-art::after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#102332a6);pointer-events:none}
.sample-art figcaption{position:absolute;z-index:1;left:20px;bottom:19px;display:flex;flex-direction:column;gap:4px;max-width:calc(100% - 156px);font:8px var(--sans);letter-spacing:.04em;color:#fff4df;pointer-events:none}
.sample-art-title{font-size:13px;letter-spacing:.06em}
.sample-art .artwork-open{right:14px;bottom:13px}
.sample-copy{display:flex;flex:1;flex-direction:column;padding:24px}
.sample-copy .sample-detail{align-self:flex-start;margin-top:auto;padding-top:14px}
.sample-reading-guide{margin:15px 0 0;border-top:1px solid var(--line)}
.sample-reading-guide>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;list-style:none;cursor:pointer;font-size:12px;color:var(--muted)}
.sample-reading-guide>summary:hover{color:var(--sample-accent)}
.sample-reading-guide>summary::-webkit-details-marker{display:none}
.sample-reading-guide>summary::after{content:"+";font-size:17px;color:var(--sample-accent)}
.sample-reading-guide[open]>summary::after{content:"−"}
.sample-reading-guide>summary:focus-visible{outline:1px solid var(--sample-accent);outline-offset:3px}
.sample-reading-notes{display:grid;gap:14px;padding:6px 0 10px}
.sample-reading-notes h5{font-size:13px;font-weight:500;line-height:1.7;color:var(--ink);margin:0 0 4px}
.sample-reading-notes p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}
.sample-theme{font:10px/1.6 var(--mono);letter-spacing:.04em;color:var(--sample-accent);margin:0 0 11px}
.sample-copy h4{font-size:24px;font-weight:500;line-height:1.5;letter-spacing:-.025em;text-wrap:balance;margin:0 0 11px}
.sample-author{font-size:11px;line-height:1.7;color:var(--muted);margin:0 0 16px}
.sample-note{font-size:14px;line-height:1.9;color:var(--muted);margin:0}
.sample-question{font-size:13px;line-height:1.9;color:var(--ink);margin:18px 0 0;padding-left:11px;border-left:2px solid var(--sample-accent)}
.sample-question>span{display:block;font:10px/1.6 var(--mono);letter-spacing:.04em;color:var(--sample-accent);margin-bottom:6px}
.sample-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px}
.sample-footer .sample-source{margin:0}
.question-entry{display:inline-flex;align-items:center;gap:17px;min-height:44px;font-size:12px;white-space:nowrap;color:var(--ink);border-bottom:1px solid var(--line)}
.question-entry>span{font-size:17px}
.question-entry:hover{color:#4c652e;border-color:#75954b}
.sample-detail{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;margin-top:11px;font-size:12px;border-bottom:1px solid var(--sample-accent);color:var(--ink)}
.sample-detail>span{font-size:16px}
.sample-detail:hover{color:var(--sample-accent);border-color:var(--sample-accent)}
.sample-detail:focus-visible{outline:1px solid var(--sample-accent);outline-offset:4px}
.sample-source{margin-top:16px;line-height:1.9}
.home-projects{background:#e7eee9;padding-top:61px;padding-bottom:72px;scroll-margin-top:0}
.project-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:48px}
.project-tile{--ink:#183832;--muted:#49635d;--line:#b9cdc4;--project-accent:#2c695f;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"art copy";align-items:center;gap:56px;min-width:0;color:var(--ink)}
.project-tile[data-project=models]{--ink:#fff0d2;--muted:#c2d4dd;--line:#527585;--project-accent:#e2b575;padding:36px;gap:40px;border-radius:18px;background:#173746}
.project-tile:nth-child(even){grid-template-areas:"copy art"}
.project-copy{grid-area:copy;display:flex;flex-direction:column;min-width:0}
.project-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
.project-actions a,.project-shortcuts a{display:inline-flex;align-items:center;gap:16px;min-height:44px;padding:10px 18px;border:1px solid var(--project-accent,#53706a);border-radius:24px;font-size:13px;color:var(--ink)}
.project-actions a:hover{background:var(--project-accent);color:#fff8ef}
.project-tile[data-project=models] .project-actions a:hover{color:#173746}
.project-shortcuts{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:38px;color:#183832}
.project-shortcuts>span{font-size:12px;margin-right:10px}
.service-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:48px}
.service-project{--ink:#553822;--muted:#70523b;--project-accent:#885f38;min-width:0;border-radius:14px;overflow:clip;background:#f3debd;color:var(--ink)}
.service-project[data-service=status]{--ink:#273e4a;--muted:#4a666d;--project-accent:#326e74;background:#dde8e9}
.service-project-art{position:relative;aspect-ratio:1.5;margin:0;background:#253440;overflow:clip}
.service-project-art>.artwork-link{position:absolute;inset:0}
.service-project-art::after{content:"";position:absolute;inset:58% 0 0;background:linear-gradient(transparent,#122b3fd9);pointer-events:none}
.service-project-art figcaption{position:absolute;z-index:1;left:24px;bottom:20px;font:15px var(--sans);letter-spacing:.04em;color:#fff4e5;pointer-events:none}
.service-project-copy{padding:27px 30px 30px}
.service-project-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;color:var(--muted);margin-bottom:17px;font:9px var(--mono);letter-spacing:.07em}
.service-project-meta small{font:11px var(--sans);letter-spacing:0}
.service-project-copy h3{font-size:30px;font-weight:500;line-height:1.45;letter-spacing:-.035em;margin:0 0 12px}
.service-project-copy>p{font-size:15px;line-height:1.9;margin:0;color:var(--muted)}
@media(max-width:760px){.service-projects{grid-template-columns:minmax(0,1fr);gap:24px}.service-project-copy{padding:24px}.service-project-copy h3{font-size:28px}}
.project-visual{grid-area:art;position:relative;aspect-ratio:1.5;overflow:clip;padding:0;border-radius:14px;isolation:isolate;margin:0;background:#173342;color:#fff6e7}
.project-visual>.artwork-link{position:absolute;inset:0}
.project-visual::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0b1f31a6);pointer-events:none}
.project-visual-read .gallery-image{object-position:64% 50%}
.project-tile[data-project=models] .project-visual{aspect-ratio:1.5}
.project-tile[data-project=models] .gallery-image{object-fit:contain;width:88%;margin-inline:auto}
.project-visual>span{position:relative;z-index:1;font-size:55px;font-weight:500;line-height:1.03;letter-spacing:-.065em}
.project-visual>svg{position:absolute;right:-25px;bottom:18px;width:270px;height:218px;stroke-width:1;opacity:.75;transform:rotate(-6deg)}
.project-visual>.project-artwork{right:-16px;bottom:0;width:360px;height:300px;fill:none;stroke:none;opacity:1;transform:rotate(-5deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.project-tile:hover .project-artwork{transform:translate(-6px,-6px) rotate(2deg)}
.project-visual-make>.project-artwork{right:-16px;bottom:0;transform:rotate(7deg)}
.project-tile:hover .project-visual-make>.project-artwork{transform:translate(-6px,-6px) rotate(-2deg)}
.project-visual>figcaption{position:absolute;z-index:1;left:28px;bottom:25px;display:flex;flex-direction:column;gap:5px;max-width:calc(100% - 170px);font:9px var(--mono);letter-spacing:.09em;color:#fff6e7;pointer-events:none}
.project-art-title{font:16px var(--sans);letter-spacing:.04em}
.project-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}
.project-top>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:50%}
.project-top svg{width:18px;height:18px}
.project-state{color:var(--muted);font-size:11px}
.project-tile h3{font-size:18px;font-weight:500;letter-spacing:.025em;line-height:1.7;margin:0 0 13px;color:var(--project-accent)}
.project-copy>p{font-size:16px;line-height:1.95;color:var(--muted);margin:0 0 25px}
.project-copy>p.project-motto{font-size:44px;font-weight:500;line-height:1.4;letter-spacing:-.04em;text-wrap:balance;color:var(--ink);margin:0 0 24px}
.project-tile[data-project=creator] .project-motto{font-family:"Noto Serif CJK SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;letter-spacing:-.055em}
.project-tile[data-project=models] .project-motto{color:#f1c792}
.project-copy>p.project-direction{border-top:1px solid var(--line);padding-top:15px;font-size:11px;color:var(--ink);margin:0}
.project-direction span{display:block;margin-bottom:5px;font-size:10px;color:var(--muted)}
.project-path{margin:1px 0 22px;padding-top:17px;border-top:1px solid var(--line)}
.path-label{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 12px;font:10px var(--mono);letter-spacing:.035em;color:var(--project-accent);margin:0 0 15px}
.path-label>span{font:11px/1.6 var(--sans);letter-spacing:0;color:var(--muted)}
.path-scenario{font-size:22px;line-height:1.65;letter-spacing:-.03em;color:var(--ink);max-width:24em;margin:0 0 23px;padding-left:15px;border-left:2px solid var(--project-accent);text-wrap:balance}
.project-path ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0}
.project-path li{position:relative;min-width:0}
.path-index{display:block;font:10px var(--mono);color:var(--project-accent);margin-bottom:10px}
.project-path li:not(:last-child)::after{content:"→";position:absolute;top:0;right:-13px;font:11px var(--mono);color:var(--project-accent)}
.project-path h4{font-size:14px;font-weight:500;margin:0 0 7px;letter-spacing:-.02em}
.project-path li>p{font-size:13px;line-height:1.85;color:var(--muted);margin:0}
.project-notes>summary:hover{color:var(--project-accent)}
.project-notes>summary:focus-visible{outline:2px solid var(--project-accent);outline-offset:4px}
.project-notes .note-indicator{border-color:var(--line);color:var(--project-accent)}
.project-availability{margin:23px 0 0;color:var(--muted);font-size:11px}
.home-about{display:grid;grid-template-columns:1.05fr 1fr;gap:34px 60px;background:#e7edf2;padding-top:68px;padding-bottom:68px;scroll-margin-top:0}
.about-heading{grid-column:1/-1}
.about-art{position:relative;min-width:0;margin:0;aspect-ratio:1.5;overflow:clip;border-radius:10px;background:#1b2734;isolation:isolate}
.about-art>.artwork-link{position:absolute;inset:0}
.about-art::after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0a1726a6);pointer-events:none}
.about-art figcaption{position:absolute;z-index:1;left:24px;right:24px;bottom:23px;display:flex;justify-content:space-between;gap:14px;color:#f0d8b3;font:8px var(--mono);letter-spacing:.08em;pointer-events:none}
.about-art figcaption>.about-art-title{font:15px var(--sans);letter-spacing:.04em}
.about-art figcaption>small{font:9px var(--sans);letter-spacing:.04em}
.about-copy{align-self:center}
.home-about .eyebrow{color:#627990}
.home-about h2{font-size:34px;font-weight:500;letter-spacing:-.06em;line-height:1.4;margin:0}
.about-copy>p{font-size:16px;line-height:2;color:#526576;margin:0 0 23px}
.about-copy>p.about-motto{font-size:36px;color:var(--ink);line-height:1.6;letter-spacing:-.03em;text-wrap:balance;margin:0}
.home-about .working-notes{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-color:#8c9cac60;margin:0}
.home-about .working-notes h3{font-size:15px}
.home-about .working-notes p{font-size:14px;line-height:1.9;color:#526576;margin:0}
.working-note-link{display:inline-flex;align-items:center;gap:15px;min-height:44px;font-size:12px;margin-top:10px;color:#385b76;border-bottom:1px solid #829bae}
.working-note-link:hover{color:#183832;border-color:#183832}
.home-epilogue{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:60px;padding:64px max(40px,calc((100% - 1240px)/2));background:#30262f;color:#fff0db}
.epilogue-art{position:relative;margin:0;min-width:0;aspect-ratio:1.5;overflow:clip;border-radius:12px;background:#253440;isolation:isolate}
.epilogue-art>.artwork-link{position:absolute;inset:0}
.epilogue-art::after{content:"";position:absolute;inset:68% 0 0;background:linear-gradient(transparent,#202733ab);pointer-events:none}
.epilogue-art figcaption{position:absolute;z-index:1;bottom:23px;left:25px;right:25px;display:flex;align-items:center;gap:14px;justify-content:space-between;color:#fff0db;pointer-events:none}
.epilogue-art figcaption>span{font-size:15px;letter-spacing:.04em}
.epilogue-art figcaption>small{font-size:9px}
.epilogue-copy{min-width:0}
.epilogue-copy .eyebrow{color:#e3b68d;margin:0 0 19px}
.epilogue-copy h2{font:500 46px/1.5 "Noto Serif CJK SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;letter-spacing:-.03em;margin:0 0 24px}
.epilogue-copy>p:not(.eyebrow){font-size:15px;line-height:2;color:#d9c7c9;max-width:28em;margin:0 0 27px}
.epilogue-copy .action-primary{background:#efb179;border-color:#efb179;color:#30262f;font-size:12px}
.epilogue-copy .action-primary:hover{background:#ffe0b5;border-color:#ffe0b5}
.home-footer{display:flex;align-items:center;justify-content:space-between;gap:26px;max-width:1320px;margin:auto;padding:40px;color:var(--sheet)}
.home-footer>span{font-size:35px;font-weight:500;letter-spacing:-.06em}
.home-footer small{font:9px var(--mono);letter-spacing:.13em;color:#a9b3a0;margin-left:25px}
.home-footer>a{display:inline-flex;align-items:center;min-height:44px;font-size:11px;color:#bdc7b4}
.home-footer>a:hover{color:var(--lime)}
.home-preview-note{display:flex;align-items:center;justify-content:space-between;gap:15px;max-width:1240px;margin:auto;padding:10px 0 24px;border-top:1px dashed #ffffff30;font-size:10px;color:#a9b3a0}
.home-preview-note a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.home-access{background:var(--paper);padding:58px max(40px,calc((100% - 1200px)/2)) 64px}
.access-entry{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:30px;align-items:stretch;margin-bottom:42px}
.access-art{position:relative;min-width:0;min-height:380px;margin:0;overflow:clip;border-radius:10px;background:#1c3040;color:#fff5e7}
.access-art>.artwork-link{position:absolute;inset:0}
.access-art::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0d2538db);pointer-events:none}
.access-art figcaption{position:absolute;z-index:1;left:25px;right:25px;bottom:23px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#fff5e7;pointer-events:none}
.access-art figcaption>span{font:16px var(--sans);letter-spacing:.04em}
.access-art figcaption>small{font:9px var(--sans);letter-spacing:.03em}
.access-entry .access-paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:0}
@media(min-width:981px){.access-entry .access-path h3{font-size:30px}}
.access-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:42px}
.access-path{--ink:#49372b;--muted:#6e543e;--path-accent:#805735;--path-button-ink:#fff8ef;--path-line:#b69a72;position:relative;min-width:0;display:flex;flex-direction:column;align-items:flex-start;padding:30px 32px 26px;border-radius:10px;background:#f3dfb5;color:var(--ink)}
.access-path[data-path=personal]{--ink:#f9f0e5;--muted:#d5c4d6;--path-accent:#efb68f;--path-button-ink:#352b41;--path-line:#82607e;background:#352b41}
.access-path-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;width:100%;margin:0 0 25px;color:var(--muted)}
.access-path-meta>span:first-child{font:10px var(--mono);letter-spacing:.08em}
.access-path-meta>span:last-child{font-size:11px}
.access-path h3{font-size:34px;font-weight:500;line-height:1.4;letter-spacing:-.03em;text-wrap:balance;margin:0 0 15px}
.access-path-copy{font-size:15px;line-height:1.9;max-width:30em;color:var(--muted);margin:0 0 24px}
.access-path-link{display:inline-flex;align-items:center;gap:24px;min-height:44px;padding:8px 15px;margin-top:auto;border:1px solid var(--path-line);border-radius:24px;color:var(--ink);font-size:13px;transition:background .2s,color .2s,border-color .2s}
.access-path-link>span{font-size:19px}
.access-path-link:hover{background:var(--path-accent);color:var(--path-button-ink);border-color:var(--path-accent)}
.access-path :focus-visible{outline-color:var(--path-accent)}
.access-path ::selection{background:var(--path-accent);color:var(--path-button-ink)}
.access-path-index{position:absolute;right:32px;bottom:36px;font:12px var(--mono);color:var(--muted)}
.access-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}
.access-intro{font-size:27px;font-weight:500;line-height:1.65;letter-spacing:-.03em;color:var(--ink);margin:0 0 16px;text-wrap:balance}
.access-caption{font-size:14px;line-height:1.9;max-width:24em;color:var(--muted);margin:0}
.access-note{border-top:1px solid var(--line)}
.access-note:last-child{border-bottom:1px solid var(--line)}
.access-note.content-notes>summary{min-height:62px;font-size:15px;gap:14px}
.access-note.content-notes>summary:hover{color:#6d527a}
.access-note-status{font-size:11px;color:var(--muted);margin-left:auto}
.access-note .note-indicator{border-color:#b6a5c0;color:#6d527a}
.access-answer{font-size:14px;line-height:1.95;color:var(--muted);margin:0;padding:0 0 23px;max-width:44em}
@supports (interpolate-size:allow-keywords) and selector(::details-content){
  .access-note{interpolate-size:allow-keywords}
  .access-note::details-content{height:0;opacity:0;overflow:clip;transition:height .32s cubic-bezier(.22,1,.36,1),opacity .24s,content-visibility .32s allow-discrete}
  .access-note[open]::details-content{height:auto;opacity:1}
  html[data-motion=paused] .access-note::details-content{transition:none}
  @media(prefers-reduced-motion:reduce){.access-note::details-content{transition:none}}
}

/* Optional reading guidance and project notes use native, keyboard-friendly disclosure. */
.content-notes{min-width:0}
.content-notes>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;padding:11px 0;list-style:none;cursor:pointer;font-size:12px;color:var(--ink)}
.content-notes>summary::-webkit-details-marker{display:none}
.content-notes>summary:hover{color:#4a612f}
.note-indicator{display:grid;place-items:center;width:23px;height:23px;border:1px solid #9fae8c80;border-radius:50%;flex:0 0 auto;font:16px/1 var(--mono);transition:transform .2s}
.content-notes[open] .note-indicator{transform:rotate(45deg)}
.notes-body{padding:4px 0 19px;max-width:42em}
.notes-body section+section{margin-top:18px}
.notes-body h4{font-size:11px;font-weight:600;letter-spacing:.025em;margin:0 0 6px}
.notes-body p{font-size:13px;line-height:1.9;color:var(--muted);margin:0}
.reading-guide{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.reading-guide>summary{min-height:54px;font-size:13px}
.reading-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:12px 0 27px;margin:0}
.reading-steps li{display:flex;align-items:flex-start;gap:17px;min-width:0}
.step-index{font:11px/1.8 var(--mono);color:#71815d;flex:0 0 auto}
.reading-steps h3{font-size:17px;font-weight:500;margin:0 0 7px;letter-spacing:-.025em}
.reading-steps p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}
.project-grid{align-items:start}
.project-notes{margin-top:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.working-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none;border-top:1px solid #8f648b60;margin:27px 0 0;padding:21px 0 0}
.working-notes h3{font-size:13px;font-weight:500;letter-spacing:-.02em;margin:0 0 8px}
.about-copy .working-notes p{font-size:12px;line-height:1.9;color:#6a506f;margin:0}
.tool-guide{margin:0 0 13px;position:relative;z-index:1}
.tool-guide>summary{min-height:44px;padding:6px 0;font-size:11px;color:#5d6b50}
.tool-guide .notes-body{padding-bottom:6px}
.tool-guide .notes-body p{font-size:12px}
.search-match{color:inherit;background:#d9ef7099;border-radius:2px;padding:0 1px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.community-card .search-match{background:#d9ef703b;color:var(--sheet);box-shadow:inset 0 -1px 0 var(--lime)}
.tool-guide .note-indicator{width:20px;height:20px;font-size:14px}
.community-guide{margin:17px 0 4px;border-top:1px solid #9ea98b55}
.community-guide>summary{color:var(--sheet);font-size:12px}
.community-guide>summary:hover{color:var(--lime)}
.community-guide .note-indicator{border-color:#9ea98b88}
.community-guide .notes-body{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:none;padding-bottom:10px}
.community-guide .notes-body section+section{margin-top:0}
.community-guide .notes-body h4{font-size:12px;color:var(--lime)}
.community-guide .notes-body p{font-size:12px;color:#ced7c2}
.compatibility-action .action{font-size:12px}

@media(max-width:760px){
  .community-guide .notes-body{grid-template-columns:1fr;gap:15px}
  .reading-steps{gap:20px}
  .reading-steps li{gap:11px}
  .reading-steps h3{font-size:15px}
  .working-notes{grid-template-columns:1fr;gap:15px}
}
@media(max-width:600px){
  .path-scenario{font-size:18px;margin-bottom:21px}
  .project-path ol{grid-template-columns:1fr;gap:14px}
  .project-path li{display:grid;grid-template-columns:25px minmax(0,1fr);column-gap:12px}
  .project-path .path-index{grid-row:1/3;margin-top:3px;margin-bottom:0}
  .project-path li>p{grid-column:2}
  .project-path li:not(:last-child)::after{display:none}
  .project-path h4{font-size:13px;margin-bottom:5px}
  .sample-footer{align-items:flex-start;flex-direction:column;gap:10px}
  .sample-question{font-size:13px}
  .question-entry{font-size:11px}
  .reading-guide{margin-top:20px}
  .reading-guide>summary{min-height:50px;font-size:12px}
  .reading-steps{grid-template-columns:1fr;gap:18px;padding:9px 0 23px}
  .reading-steps h3{font-size:16px}
  .content-notes .notes-body p{font-size:12px}
  .project-notes{margin-top:14px}
  .working-notes{margin-top:24px;padding-top:21px;gap:17px}
  .working-notes h3{font-size:14px;margin-bottom:6px}
  .tool-guide{margin-bottom:12px}
}

/* Personal space: a concise index with the same identity, not a generic dashboard. */
.shell{width:100%;margin:0}
.intro{--ink:#33483f;--muted:#665c4d;--line:#c9bcaa;position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:56px;padding:42px max(40px,calc((100% - 1200px)/2));background:#f0e6d7;color:var(--ink);min-height:400px}
.intro-main{position:relative;z-index:1;min-width:0}
.intro .eyebrow{color:#785940;margin-bottom:19px}
.intro .eyebrow>span{color:#a76f47}
.intro h1{font-size:56px;font-weight:500;line-height:1.25;letter-spacing:-.065em;margin:0;text-wrap:balance}
.intro-copy{font-size:17px;line-height:1.9;margin:19px 0 0;color:var(--ink)}
.intro-aside{border-left:2px solid #a76f47;padding-left:13px;font-size:12px;line-height:1.9;color:var(--muted);margin:19px 0 0}
.intro-aside br{display:none}
.intro-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:25px}
.intro-entry{background:var(--ink);border-color:var(--ink);font-size:12px;min-height:48px;gap:22px}
.intro-entry:hover{background:#506252;border-color:#506252}
.intro-actions .motion-toggle{margin-top:0;min-height:44px}
.directory-study{width:340px;flex:0 0 auto;min-width:0}
.directory-art{position:relative;width:100%;min-width:0;margin:0;aspect-ratio:1.5;overflow:clip;border-radius:12px;background:#26332e;isolation:isolate}
.directory-art::after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0a152aa6);pointer-events:none}
.directory-art figcaption{position:absolute;z-index:1;bottom:23px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:baseline;gap:15px;flex-wrap:wrap;color:#fff0d7;pointer-events:none}
.directory-art-title{font-size:17px;letter-spacing:.035em}
.directory-art-note{font:9px/1.8 var(--mono);letter-spacing:.06em}
.directory-art .artwork-open{bottom:58px}
.directory-study .sculpture{aspect-ratio:1.45}
.directory-study .sculpture-caption{display:none}
.intro>.motion-toggle{position:absolute;right:max(40px,calc((100% - 1200px)/2));bottom:22px;z-index:3}
.directory-content{max-width:1280px;padding:28px 40px 0;margin:auto}
.directory-controls{display:flex;align-items:center;gap:25px;padding:0 0 24px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.search-wrap{display:flex;align-items:center;gap:12px;min-height:48px;flex:1;max-width:450px;padding:0 17px;border:1px solid #c2cab9;border-radius:25px;background:var(--sheet);color:var(--muted)}
.search-wrap:focus-within{border-color:#6d8642}
.search-wrap svg{width:18px;height:18px;flex-shrink:0}
.search-input{display:flex;flex:1;min-width:0}
.search-wrap input{min-width:0;width:100%;background:transparent;color:var(--ink);border:0;font-size:13px;padding:11px 0}
.search-wrap input::placeholder{color:var(--muted)}
.search-wrap input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none}
.clear-search{display:grid;place-items:center;flex:0 0 44px;width:44px;min-height:44px;padding:0;border:0;border-radius:50%;color:var(--muted);background:transparent}
.clear-search>span{font-size:22px;line-height:1}
.clear-search:hover{color:var(--ink);background:var(--soft)}
.search-wrap input:focus-visible{outline-offset:1px}
.filters{display:flex;gap:2px;background:#eee4f1;border:1px solid #ddd0e4;border-radius:25px;padding:3px}
.filters button{border:0;border-radius:23px;background:transparent;color:#74607f;min-height:42px;padding:9px 17px;font-size:12px}
.filters button[aria-pressed=true]{color:var(--sheet);background:var(--green-dark)}
.filters button:not([aria-pressed=true]):hover{background:#e0ceef}
.result-count{font-size:11px;color:var(--muted);margin-left:auto;white-space:nowrap}
.directory-index{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.directory-index>span{font:10px var(--mono);color:var(--muted);margin-right:8px}
.directory-index>a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:7px 14px;border:1px solid var(--line);border-radius:24px;font-size:12px;max-width:100%}
.directory-index a>span{font:12px var(--sans);color:#728260}
.directory-index a:focus-visible{outline-color:var(--ink)}
.directory-index>a:hover{background:var(--lime);border-color:var(--lime)}
@media(max-width:600px){
  .directory-index{gap:6px;margin-bottom:22px}
  .directory-index>span{font-size:9px;margin-right:2px}
  .directory-index>a{gap:6px;padding-inline:11px;font-size:11px}
  .directory-index a>span{font-size:11px}
}
.directory-item{scroll-margin-top:24px}
.directory-item h3{width:fit-content;max-width:100%}
.directory-item[tabindex="-1"]:focus-visible{outline:none}
.directory-item[tabindex="-1"]:focus-visible h3{outline:2px solid currentColor;outline-offset:6px}
.directory-section{margin:0 0 32px}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:17px}
.section-heading h2{display:flex;align-items:center;gap:13px;margin:0;font-size:15px;font-weight:500}
.section-index{font:10px var(--mono);color:#6d7b59}
.section-heading>span{font-size:11px;color:var(--muted)}
.community-card{display:grid;grid-template-columns:126px minmax(0,1fr);gap:28px;padding:27px 33px;background:radial-gradient(ellipse at 0% 30%,#83597544,transparent 60%),#29213b;color:var(--sheet);border-radius:14px}
.community-mark{position:relative;display:grid;place-items:center;align-self:center;justify-self:center;width:95px;height:111px;border:1px solid #afbb984c;color:var(--lime);font-size:47px;font-weight:400}
.community-mark::after{content:"READ & SHARE";position:absolute;bottom:8px;font:7px var(--mono);letter-spacing:.1em;color:#a7b591}
.community-content{min-width:0}
.community-card.community-card-art{grid-template-columns:minmax(0,.8fr) minmax(0,1.65fr);gap:0;padding:0;overflow:clip}
.community-art{position:relative;min-width:0;min-height:340px;margin:0;overflow:clip;background:#23333b}
.community-art>.artwork-link{position:absolute;inset:0}
.community-art::after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#121e2cb3);pointer-events:none}
.community-art figcaption{position:absolute;z-index:1;left:24px;bottom:22px;font-size:13px;letter-spacing:.04em;color:#fff0d4;pointer-events:none}
.community-art figcaption,.tool-art-panel figcaption{display:flex;flex-direction:column;gap:3px}
.community-art figcaption>small,.tool-art-panel figcaption>small{font-size:9px;line-height:1.5;letter-spacing:.04em;color:#f3ddc0}
.community-card-art .community-content{padding:30px 32px}
.item-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;color:#afbc9e}
.stage-label{border:1px solid #9ea98b55;border-radius:3px;padding:3px 8px;font-size:10px;color:#cad6b4}
.community-card h3{font-size:30px;font-weight:500;letter-spacing:-.06em;line-height:1.4;margin:9px 0 5px}
.description{font-size:14px;line-height:1.8;color:var(--muted);margin:8px 0 0}
.community-card .description{color:#ced7c2}
.community-note{font-size:11px;color:#a9b798;margin:5px 0 0}
.community-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:28px;margin-top:18px}
.community-actions>div{display:flex;align-items:center;gap:12px}
.community-actions small{font-size:10px;color:#a9b798}
.community-actions .action-primary{background:var(--lime);border-color:var(--lime);color:var(--ink);min-height:44px;padding:8px 18px}
.community-actions .action-primary:hover{background:var(--sheet);border-color:var(--sheet)}
.community-actions .action-text{min-height:44px;font-size:12px}
.community-card-art .community-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:23px}
.community-card-art .community-actions>.community-path{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;padding-top:15px;border-top:1px solid #a2a78c55}
.community-path-index{font:10px var(--mono);color:var(--lime);margin-bottom:11px}
.community-path-title{font-size:16px;line-height:1.65;letter-spacing:-.025em;color:var(--sheet);margin:0 0 8px;text-wrap:balance}
.community-path-copy{font-size:12px;line-height:1.85;color:#ced7c2;margin:0 0 13px}
.community-path .action{margin-top:auto}
.community-path>small{margin-top:7px}
@media(max-width:760px){
  .community-card-art .community-actions{grid-template-columns:1fr;gap:20px}
  .community-path-title{font-size:18px}
  .community-path-copy{font-size:13px}
}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}
.tool-grid:has(>.tool-card:not([hidden])):not(:has(>.tool-card:not([hidden])~.tool-card:not([hidden]))){grid-template-columns:minmax(0,582px);justify-content:center}
.tool-card{--ink:#3b332c;--muted:#716044;--line:#d6c3a4;--sheet:#fff9ef;--tool-accent:#a95737;--tool-button-ink:#fff9ef;--tool-icon-bg:#efd8b4;--tool-match:#efc073;position:relative;display:flex;flex-direction:column;min-width:0;padding:27px 29px 24px;background:#faf0db;color:var(--ink);border:1px solid var(--line);border-radius:14px;isolation:isolate;overflow:clip;transition:border-color .2s,box-shadow .2s}
.tool-card:hover{border-color:var(--tool-accent);box-shadow:0 8px 24px #14253714}
.tool-art-panel{position:relative;order:-1;flex-shrink:0;min-width:0;aspect-ratio:1.8;margin:-27px -29px 23px;overflow:clip;background:#142537}
.tool-art-panel>.artwork-link{position:absolute;inset:0}
.tool-art-panel .artwork-open{bottom:17px}
.tool-art-panel::after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0c192bc7);pointer-events:none}
.tool-art-panel figcaption{position:absolute;z-index:1;left:24px;right:120px;bottom:19px;font-size:13px;letter-spacing:.04em;line-height:1.6;color:#fff4df;pointer-events:none}
.tool-card[data-tool=radio] .gallery-image{object-position:50% 65%}
.tool-card[data-tool=spark] .gallery-image{object-position:55% 60%}
.tool-card[data-tool=pulse] .gallery-image{object-position:35% 75%}
.tool-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:19px;position:relative;z-index:1}
.tool-icon{display:grid;place-items:center;background:var(--tool-icon-bg);color:var(--tool-accent);width:35px;height:35px;border-radius:50%}
.tool-icon svg{width:19px;height:19px}
.item-number{font:10px var(--mono);letter-spacing:.07em;color:var(--muted)}
.item-number>span{padding:0 5px;color:var(--tool-accent)}
.tool-art{position:absolute;right:-15px;top:19px;width:190px;height:150px;z-index:-1;opacity:.25;transform:rotate(-10deg);pointer-events:none;transition:transform .6s}
.tool-card:hover .tool-art{transform:translateY(-5px) rotate(-3deg)}
.tool-art svg{width:100%;height:100%;stroke:#ad7655;stroke-width:1.15;fill:none}
.tool-card[data-tool=radio]{--ink:#fff4df;--muted:#c5d8ca;--line:#58786d;--tool-accent:#e2b887;--tool-button-ink:#253c35;--tool-icon-bg:#34554c;--tool-match:#477566;background:#173d3d}
.tool-card[data-tool=radio] .tool-art svg{stroke:#4a9d94}
.tool-card[data-tool=spark]{--ink:#373247;--muted:#695b74;--line:#cbbdcd;--tool-accent:#795389;--tool-button-ink:#fff9ef;--tool-icon-bg:#ded0e2;--tool-match:#ddc3e8;background:#f0e8ee}
.tool-card[data-tool=spark] .tool-art svg{stroke:#956cc5}
.tool-card[data-tool=pulse]{--ink:#f7f1e4;--muted:#c0cde0;--line:#566b89;--tool-accent:#daba82;--tool-button-ink:#233249;--tool-icon-bg:#344561;--tool-match:#445473;background:#192d49}
.tool-card[data-tool=pulse] .tool-art svg{stroke:#678ab8}
.tool-card h3{font-size:32px;font-weight:500;letter-spacing:-.035em;line-height:1.4;text-wrap:balance;margin:0;position:relative}
.tool-card[data-tool=inbox] h3,.tool-card[data-tool=radio] h3{font-family:"Noto Serif CJK SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;font-size:38px;letter-spacing:-.025em}
.tool-card[data-tool=radio] .tool-scenario-question{font-family:"Noto Serif CJK SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;font-size:22px;line-height:1.7}
.tool-card .description{font-size:15px;line-height:1.9;margin:12px 0 20px;max-width:29em;position:relative}
.tool-scenario{border-top:1px solid var(--line);padding-top:17px;margin:0 0 20px}
.tool-scenario-label{font-size:10px;line-height:1.6;letter-spacing:.04em;color:var(--tool-accent);margin:0 0 9px}
.tool-scenario-question{font-size:20px;line-height:1.65;letter-spacing:-.02em;text-wrap:balance;color:var(--ink);max-width:25em;margin:0}
.tool-card .tool-guide>summary{font-size:12px;color:var(--muted)}
.tool-card .tool-guide>summary:hover{color:var(--tool-accent)}
.tool-card .note-indicator{border-color:var(--line);color:var(--tool-accent)}
.tool-card .notes-body h4{font-size:13px;color:var(--ink)}
.tool-card .notes-body p{font-size:13px;line-height:1.9;color:var(--muted)}
.tool-card .search-match{background:var(--tool-match);color:var(--ink)}
.tool-card ::selection{background:var(--tool-accent);color:var(--tool-button-ink)}
.tool-card :focus-visible{outline-color:var(--tool-accent)}
.tool-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding-top:17px;margin-top:auto;border-top:1px solid var(--line)}
.tool-actions .action-primary{min-height:44px;padding:8px 17px;background:var(--tool-accent);border-color:var(--tool-accent);color:var(--tool-button-ink);font-size:12px}
.tool-actions .action-primary:hover{background:var(--ink);border-color:var(--ink);color:var(--tool-button-ink)}
.tool-actions .action-text{font-size:11px;gap:10px}
.tool-action-link{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0}
.tool-action-link>small{font-size:10px;line-height:1.6;color:var(--muted)}
.empty-state{text-align:center;padding:48px 24px;border:1px solid var(--line);background:var(--sheet);border-radius:3px}
.empty-state h2{font-size:26px;font-weight:500;letter-spacing:-.05em}
.empty-state p{font-size:13px;color:var(--muted)}
.empty-state button{border:0;border-radius:24px;min-height:44px;padding:10px 21px;background:var(--ink);color:var(--sheet)}
.empty-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-top:22px}
.empty-actions #reset-search{color:var(--ink);background:transparent;border:1px solid var(--line)}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding:25px 0 28px;margin-top:35px;font-size:10px;color:var(--muted)}
.site-footer strong{font-size:23px;font-weight:500;letter-spacing:-.055em;color:var(--ink)}
.site-footer p{margin:7px 0 0}
.footer-links{display:flex;align-items:center;gap:27px}
.footer-links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:11px}
.footer-links a:hover{color:#486129}

/* Same-origin page transitions are a progressive CSS enhancement only. */
@property --art-ambient-one{syntax:"<color>";inherits:true;initial-value:#253c4a}
@property --art-ambient-two{syntax:"<color>";inherits:true;initial-value:#443142}
.art-viewer{width:min(1240px,calc(100vw - 48px));height:min(900px,calc(100dvh - 48px));max-width:none;max-height:none;padding:0;margin:auto;border:1px solid #d9bc9438;border-radius:12px;background:var(--art-ambient-bg,#111b27);color:#f7eee2;overflow:hidden;opacity:0;transform:translateY(12px) scale(.985);transition:opacity .24s,transform .24s,background-color var(--art-wall-transition,.7s),display .24s allow-discrete,overlay .24s allow-discrete}
.art-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;opacity:1;transform:none}
.art-viewer::backdrop{background:#0d1120d9;backdrop-filter:blur(12px);opacity:0;transition:opacity .24s,display .24s allow-discrete}
.art-viewer[open]::backdrop{opacity:1}
@starting-style{.art-viewer[open]{opacity:0;transform:translateY(12px) scale(.985)}.art-viewer[open]::backdrop{opacity:0}}
.art-viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 21px;border-bottom:1px solid #ffffff17}
.art-viewer-toolbar>span{font:9px var(--mono);letter-spacing:.13em;color:#d2b796}
.art-viewer button{color:inherit;font-size:12px}
.art-viewer-toolbar button{display:inline-flex;align-items:center;gap:17px;min-height:44px;padding:6px 16px;border:1px solid #ffffff30;border-radius:25px;background:transparent}
.art-viewer-toolbar button>span{font-size:22px}
.art-viewer-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.art-viewer-toolbar button[data-art-zoom-toggle]{gap:9px;padding-inline:13px}
.art-viewer-toolbar button[data-art-zoom-toggle]>span{font-size:17px}
.art-viewer-toolbar button[data-art-zoom-toggle][aria-pressed=true]{background:#fff2dc18;border-color:#e8c295}
.art-viewer-toolbar button[data-art-focus-toggle]{gap:0;padding-inline:12px}
.art-viewer-toolbar button[data-art-focus-toggle][aria-pressed=true]{background:#fff2dc18;border-color:#e8c295}
.art-viewer-toolbar button[data-art-wall-toggle]{gap:0;padding-inline:12px;white-space:nowrap}
.art-viewer-toolbar button:disabled{opacity:.4;cursor:default}
.art-viewer button:focus-visible{outline-color:var(--lime)}
.art-viewer-main{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:0}
.art-viewer-canvas{position:relative;min-width:0;min-height:0;padding:24px;display:grid;background:radial-gradient(ellipse at 16% 10%,color-mix(in srgb,var(--art-ambient-one) 48%,transparent),transparent 68%),radial-gradient(ellipse at 82% 90%,color-mix(in srgb,var(--art-ambient-two) 52%,transparent),transparent 70%);transition:--art-ambient-one .7s,--art-ambient-two .7s}
.art-viewer-stage{position:relative;display:grid;place-items:center;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;touch-action:pan-y pinch-zoom;cursor:zoom-in}
.art-viewer-stage>.art-swap-old{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0}
.art-viewer-stage[data-art-zoom=detail]{place-items:start;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;scrollbar-width:thin;scrollbar-color:#b5a082 #1c2838;cursor:grab;user-select:none}
.art-viewer-stage[data-art-dragging=true]{cursor:grabbing}
.art-viewer-stage[data-art-zoom=detail] .art-viewer-image{margin:auto}
.art-viewer-stage[data-art-zoom=detail]:focus-visible{outline:1px solid #e8c295;outline-offset:3px}
.art-viewer-pan{position:absolute;z-index:2;left:50%;bottom:20px;transform:translateX(-50%);max-width:calc(100% - 24px);padding:9px 10px 7px;border:1px solid #e8c29566;border-radius:12px;background:#152332ed;color:#fff3df;box-shadow:0 4px 20px #08111a50}
.art-pan-hint{font-size:10px;text-align:center;color:#e5cfb3;line-height:1.5;white-space:nowrap;margin:0 0 4px}
.art-pan-buttons{display:flex;gap:3px}
.art-scale-row{display:flex;align-items:center;gap:8px;margin:0 0 4px}
.art-scale-row>label{font-size:10px}
.art-scale-row input{flex:1;min-width:44px;width:100%;height:44px;margin:0;accent-color:#e8c295}
.art-scale-row input:focus-visible{outline:1px solid #e8c295;outline-offset:3px}
.art-scale-row output{font:11px var(--mono);min-width:39px;text-align:right}
.art-pan-buttons button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:5px;border:0;border-radius:7px;background:transparent;color:inherit;font:18px var(--sans)}
.art-pan-buttons button[data-art-pan=center]{font-size:11px}
.art-pan-buttons button:hover:not(:disabled){background:#fff2dc1c}
.art-pan-buttons button:disabled{opacity:.35;cursor:default}
.art-viewer-image{display:block;width:100%;height:100%;min-height:0;min-width:0;object-fit:contain}
.art-viewer-status{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;background:#111b2733;font-size:12px;color:#f6d7ae;margin:0}
.art-viewer-status:empty{display:none}
.art-viewer-info{display:flex;flex-direction:column;justify-content:center;justify-content:safe center;min-width:0;padding:30px 26px;border-left:1px solid #ffffff17;overflow-y:auto;scrollbar-width:thin}
.art-viewer-label{font-size:10px;letter-spacing:.07em;color:#c9ab87;margin:0 0 18px}
.art-viewer-info h2{display:flex;align-items:center;gap:8px;width:100%;font-size:29px;font-weight:400;line-height:1.4;letter-spacing:-.04em;margin:0}
#art-viewer-title{flex:1;min-width:0}
.art-viewer-disclosure{margin:0;min-width:0}
.art-viewer-disclosure>summary{display:flex;align-items:center;min-height:44px;list-style:none;cursor:pointer;border-radius:4px}
.art-viewer-disclosure>summary::-webkit-details-marker{display:none}
.art-viewer-disclosure>summary h2::after{content:"+";font-size:18px;color:#d2b796;letter-spacing:0}
.art-viewer-disclosure[open]>summary h2::after{content:"−"}
.art-viewer-disclosure[open]>summary{margin-bottom:20px}
.art-viewer-disclosure>summary:focus-visible{outline:1px solid #e8c295;outline-offset:3px}
.art-notes-label{font-size:10px;font-weight:400;letter-spacing:0;white-space:nowrap;color:#c9ab87}
.art-viewer-notes>p{font-size:12px;line-height:1.95;color:#b6c1cd;margin:0 0 29px}
.art-viewer-notes>p.art-viewer-style{font-size:11px;color:#e8c295;letter-spacing:.04em;margin:0 0 14px}
.art-viewer-study{margin:0 0 20px;border-top:1px solid #ffffff20}
.art-viewer-study>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer;list-style:none;font-size:12px;color:#e8c295}
.art-viewer-study>summary::-webkit-details-marker{display:none}
.art-viewer-study>summary::after{content:"+";font-size:17px}
.art-viewer-study[open]>summary::after{content:"−"}
.art-viewer-study>summary:focus-visible{outline:1px solid #e8c295;outline-offset:3px}
.art-viewer-study>p{font-size:12px;line-height:1.95;color:#b6c1cd;margin:0;padding:0 0 11px}
.art-detail-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:2px 0 10px}
.art-detail-group button{display:flex;align-items:center;gap:7px;min-width:0;min-height:44px;padding:7px 8px;border:1px solid #ffffff30;border-radius:6px;background:#ffffff07;text-align:left;line-height:1.5}
.art-detail-group button>span:first-child{font:9px var(--mono);color:#e8c295}
.art-detail-group button>span:last-child{font-size:11px;min-width:0}
.art-detail-group button:hover:not(:disabled){background:#fff2dc13;border-color:#e8c295}
.art-detail-group button:focus-visible{outline:1px solid #e8c295;outline-offset:3px}
.art-detail-group button:disabled{opacity:.4;cursor:default}
.art-viewer-study>p.art-detail-note{font-size:11px;line-height:1.8;padding-bottom:16px;color:#c9ab87}
.art-thumbs{display:grid;grid-template-columns:repeat(var(--art-thumb-columns,5),minmax(0,1fr));gap:6px;padding-top:20px;border-top:1px solid #ffffff20}
.art-thumb{display:block;padding:3px;min-height:44px;min-width:0;border:1px solid transparent;border-radius:4px;background:transparent;opacity:.6;transition:opacity .2s,border-color .2s}
.art-thumb img{display:block;width:100%;height:42px;object-fit:cover;border-radius:2px}
.art-thumb:hover,.art-thumb[aria-pressed=true]{opacity:1}
.art-thumb[aria-pressed=true]{border-color:#e8c295}
.art-viewer-hint{font-size:9px;color:#8c9baa;margin-top:23px}
.art-viewer-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 21px;border-top:1px solid #ffffff17}
.art-viewer-controls>button{display:inline-flex;align-items:center;gap:17px;min-height:44px;padding:6px 16px;border:0;border-radius:25px;background:#ffffff08}
.art-viewer-controls>button:hover{background:#ffffff14}
.art-viewer-controls>span{font:11px var(--mono);letter-spacing:.08em;color:#d2b796}
.art-control-caption{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center}
.art-focus-caption{display:flex;flex-direction:column;gap:1px;margin-bottom:3px;max-width:100%}
.art-focus-caption>[data-art-focus-title]{font:14px/1.4 var(--sans);letter-spacing:.025em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f7eee2}
.art-focus-caption>small{font:9px/1.3 var(--sans);letter-spacing:0;color:#c9ab87}
.art-viewer[data-art-focus=active]{width:calc(100vw - 16px);height:calc(100dvh - 16px);border-radius:8px}
.art-viewer[data-art-focus=active] .art-viewer-toolbar{padding-block:7px}
.art-viewer[data-art-focus=active] .art-viewer-main{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.art-viewer[data-art-focus=active] .art-viewer-canvas{padding:8px 12px}
.art-viewer[data-art-focus=active] .art-viewer-controls{padding-block:8px}
.art-viewer[data-art-wall-chosen]{--art-wall-transition:0s}
.art-viewer[data-art-wall=paper]{background:#f2ecdf;color:#293d36;border-color:#b8aa95}
.art-viewer[data-art-wall=paper] .art-viewer-canvas{background:radial-gradient(ellipse at 16% 10%,color-mix(in srgb,var(--art-ambient-one) 8%,transparent),transparent 68%),#f7f2e8}
.art-viewer[data-art-wall=paper] .art-viewer-toolbar,.art-viewer[data-art-wall=paper] .art-viewer-controls,.art-viewer[data-art-wall=paper] .art-viewer-info{border-color:#cbbfaa}
.art-viewer[data-art-wall=paper] .art-viewer-toolbar>span,.art-viewer[data-art-wall=paper] .art-viewer-controls>span,.art-viewer[data-art-wall=paper] .art-viewer-label,.art-viewer[data-art-wall=paper] .art-notes-label,.art-viewer[data-art-wall=paper] .art-focus-caption>small{color:#68553c}
.art-viewer[data-art-wall=paper] .art-viewer-toolbar button{border-color:#b8aa95}
.art-viewer[data-art-wall=paper] .art-viewer-toolbar button[aria-pressed=true]{background:#e0d8c8;border-color:#78684c}
.art-viewer[data-art-wall=paper] .art-viewer button:focus-visible,.art-viewer[data-art-wall=paper] .art-viewer-stage[data-art-zoom=detail]:focus-visible,.art-viewer[data-art-wall=paper] summary:focus-visible{outline-color:#426351}
.art-viewer[data-art-wall=paper] .art-viewer-notes>p,.art-viewer[data-art-wall=paper] .art-viewer-study>p,.art-viewer[data-art-wall=paper] .art-viewer-hint{color:#536259}
.art-viewer[data-art-wall=paper] .art-detail-group button{border-color:#b7ab92;background:#fffdf744;color:#33483f}
.art-viewer[data-art-wall=paper] .art-detail-group button>span:first-child{color:#735731}
.art-viewer[data-art-wall=paper] .art-detail-group button:hover:not(:disabled){background:#e5d4b444;border-color:#735731}
.art-viewer[data-art-wall=paper] .art-detail-group button:focus-visible{outline-color:#735731}
.art-viewer[data-art-wall=paper] .art-viewer-notes>p.art-viewer-style,.art-viewer[data-art-wall=paper] .art-viewer-study>summary,.art-viewer[data-art-wall=paper] .art-viewer-disclosure>summary h2::after{color:#735731}
.art-viewer[data-art-wall=paper] .art-viewer-study,.art-viewer[data-art-wall=paper] .art-thumbs{border-color:#cbbfaa}
.art-viewer[data-art-wall=paper] .art-thumb[aria-pressed=true]{border-color:#78684c}
.art-viewer[data-art-wall=paper] .art-viewer-controls>button{background:#d9dfd177}
.art-viewer[data-art-wall=paper] .art-viewer-controls>button:hover{background:#d1d8c8}
.art-viewer[data-art-wall=paper] .art-focus-caption>[data-art-focus-title]{color:#293d36}
.art-viewer[data-art-wall=paper] .art-viewer-stage[data-art-zoom=detail]{scrollbar-color:#7a8976 #e6e1d8}
.art-viewer[data-art-wall=paper] .art-viewer-pan{background:#f2ecdfed;color:#293d36;border-color:#b8aa95;box-shadow:0 4px 20px #392a1718}
.art-viewer[data-art-wall=paper] .art-pan-hint{color:#536259}
.art-viewer[data-art-wall=paper] .art-pan-buttons button:hover:not(:disabled){background:#d1d8c8}
.art-viewer[data-art-wall=paper] .art-scale-row input{accent-color:#426351}
.art-viewer[data-art-wall=paper] .art-scale-row input:focus-visible{outline-color:#426351}
@media(max-height:520px){
  .art-viewer-pan{bottom:10px;padding:6px 8px}
  .art-viewer-pan .art-pan-hint{display:none}
}
@media(max-height:520px) and (min-width:600px){
  .art-viewer-pan{display:flex;align-items:center;gap:10px;width:min(500px,calc(100% - 24px))}
  .art-scale-row{flex:1;max-width:180px;margin:0}
}
.art-viewer[data-art-wall=paper] .art-viewer-status{background:#f2ecdfed;color:#735731}
@media(max-width:760px){
  .art-viewer{width:calc(100vw - 24px);height:calc(100dvh - 24px);border-radius:9px}
  .art-viewer-toolbar,.art-viewer-controls{padding:9px 12px}
  .art-viewer-toolbar>span{display:none}
  .art-viewer-toolbar{justify-content:flex-end}
  .art-viewer-actions{gap:5px}
  .art-viewer-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;min-width:0}
  .art-viewer-toolbar button{font-size:11px;gap:9px;padding-inline:11px}
  .art-viewer-toolbar button>span{font-size:18px}
  .art-viewer-toolbar button[data-art-zoom-toggle]{gap:7px;padding-inline:11px}
  .art-viewer-toolbar button[data-art-focus-toggle]{padding-inline:10px}
  .art-viewer-toolbar .art-viewer-actions button{justify-content:center;gap:4px;padding-inline:6px;min-width:0;white-space:nowrap}
  .art-viewer-toolbar .art-viewer-actions button[data-art-zoom-toggle],.art-viewer-toolbar .art-viewer-actions button[data-art-focus-toggle]{padding-inline:6px}
  .art-viewer-main{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}
  .art-viewer-canvas{padding:15px}
  .art-viewer-info{padding:8px 19px;border-left:0;border-top:1px solid #ffffff17;max-height:min(280px,44dvh)}
  .art-viewer:has(.art-viewer-study[open]) .art-viewer-info{max-height:min(220px,30dvh)}
  .art-viewer-pan .art-pan-hint{display:none}
  .art-viewer-label{font-size:9px;line-height:1.2;margin:0 0 3px}
  .art-viewer-info h2{font-size:22px;margin:0}
  .art-viewer-notes>p{font-size:11px;line-height:1.8;margin-bottom:13px}
  .art-viewer-disclosure[open]>summary{margin-bottom:10px}
  .art-thumbs{padding-top:10px;gap:4px}
  .art-thumbs:has(>.art-thumb:nth-child(n+9)){grid-template-columns:repeat(4,minmax(0,1fr))}
  .art-thumb img{height:37px}
  .art-viewer-hint{display:none}
  .art-viewer-controls>button{padding-inline:10px;font-size:11px;gap:9px}
  .art-viewer[data-art-focus=active] .art-viewer-controls{gap:9px}
  .art-viewer[data-art-focus=active] .art-control-caption{flex:1;overflow:hidden}
  .art-focus-caption>[data-art-focus-title]{font-size:12px}
}
@media(min-width:480px) and (max-width:760px){
  .art-viewer-pan{display:flex;align-items:center;gap:10px;width:min(500px,calc(100% - 24px));padding:6px 8px}
  .art-scale-row{flex:1;min-width:0;max-width:180px;margin:0}
  .art-pan-buttons{flex-shrink:0}
}
@media(max-width:400px){
  .art-viewer-toolbar>span{max-width:75px;line-height:1.5;font-size:8px;letter-spacing:0}
  .art-viewer-toolbar button{gap:10px;padding-inline:11px}
}
@keyframes orbit-drift{from{transform:rotate(-5deg) scale(.96)}to{transform:rotate(8deg) scale(1.025)}}
html[data-motion=paused] .sculpture-orbits{animation-play-state:paused}
@media(prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto;types:portal-page}
}
/* Capture decorative leaves so their links and page controls remain interactive. */
html:active-view-transition-type(portal-page),html[data-art-transition=opening]{view-transition-name:none}
html:active-view-transition-type(portal-page) .brand-mark{view-transition-name:portal-brand}
html:active-view-transition-type(portal-page) .hero-art .gallery-image,
html:active-view-transition-type(portal-page) .directory-art .gallery-image{view-transition-name:portal-art}
::view-transition,::view-transition-group(*),::view-transition-image-pair(*),::view-transition-old(*),::view-transition-new(*){pointer-events:none}
::view-transition-old(root){animation:page-out .18s ease-out both}
::view-transition-new(root){animation:page-in .26s ease-out both}
html:active-view-transition-type(portal-page)::view-transition{overflow:clip}
html:active-view-transition-type(portal-page)::view-transition-group(portal-brand){animation-duration:.42s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
html:active-view-transition-type(portal-page)::view-transition-old(portal-brand){display:none}
html:active-view-transition-type(portal-page)::view-transition-new(portal-brand){animation:none;mix-blend-mode:normal}
html:active-view-transition-type(portal-page)::view-transition-group(portal-art){animation-duration:.42s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
html:active-view-transition-type(portal-page)::view-transition-old(portal-art),html:active-view-transition-type(portal-page)::view-transition-new(portal-art){width:100%;height:100%;object-fit:cover}
html[data-art-transition=opening]::view-transition-old(root),html[data-art-transition=opening]::view-transition-new(root){animation:none;mix-blend-mode:normal}
html[data-art-transition=opening]::view-transition-group(portal-brand),html[data-art-transition=opening]::view-transition-new(portal-brand){animation:none;mix-blend-mode:normal}
html[data-art-transition=opening]::view-transition-old(portal-brand){display:none}
html[data-art-transition=opening]::view-transition-group(artwork-focus){animation-duration:.55s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
html[data-art-transition=opening]::view-transition-old(artwork-focus),html[data-art-transition=opening]::view-transition-new(artwork-focus){height:100%;width:100%;object-fit:contain}
html[data-art-transition=opening] .art-viewer{transition:background-color .7s}
html[data-art-transition=opening] .art-viewer::backdrop{transition:none}
@keyframes page-out{to{opacity:0}}
@keyframes page-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:1050px){
  .book-samples{gap:15px}
  .sample-copy{padding:20px}
  .home-header,.site-header{padding-inline:32px}
  .home-hero{padding-inline:40px;min-height:700px;padding-top:35px}
  .hero-copy h1{font-size:clamp(100px,14vw,155px)}
  .hero-statement{font-size:24px}
  .home-hero>.hero-art{width:100%;margin:0}
  .home-open,.home-projects,.home-about{padding-inline:40px}
  .reading-copy{padding:36px}
  .reading-copy h3{font-size:34px}
  .reading-art{min-height:395px}
  .project-tile{gap:34px}
  .project-visual>span{font-size:46px}
  .project-visual>svg{width:230px;height:190px;right:-34px}
  .home-preview-note{margin-inline:40px}
  .header-right{gap:14px;flex-wrap:wrap}
  .header-status{display:none}
  .intro{padding:35px 40px;gap:35px;min-height:265px}
  .intro h1{font-size:45px}
  .directory-study{width:275px}
  .directory-art{width:100%}
  .intro>.motion-toggle{right:40px;bottom:18px}
  .directory-controls{gap:17px;flex-wrap:wrap}
  .community-card{grid-template-columns:106px minmax(0,1fr);padding:26px;gap:25px}
  .community-actions>div{display:block}
  .community-actions small{display:block;margin-top:5px}
}
@media(max-width:980px){
  .access-entry{grid-template-columns:minmax(0,1fr);gap:24px}
  .access-art{aspect-ratio:1.8;min-height:0}
  .access-entry .access-paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .home-epilogue{grid-template-columns:minmax(0,1fr);gap:32px}
  .reading-feature{grid-template-columns:1fr}
  .reading-art{min-height:0;aspect-ratio:1.4}
  .project-tile,.project-tile:nth-child(even){grid-template-columns:minmax(0,1fr);grid-template-areas:"art" "copy";gap:28px}
  .project-visual{aspect-ratio:1.5}
  .project-tile[data-project=models]:nth-child(even){padding:0;gap:0;overflow:clip}
  .project-tile[data-project=models] .project-visual{aspect-ratio:1.5;border-radius:0}
  .project-tile[data-project=models] .project-copy{padding:28px}
}
@media(max-width:760px){
  .home-access{padding-inline:28px}
  .home-epilogue{padding:43px 28px}
  .epilogue-copy h2{font-size:38px}
  .community-card.community-card-art{display:block;padding:0}
  .community-art{aspect-ratio:1.5;min-height:0}
  .community-card-art .community-content{padding:24px}
  .access-layout{gap:32px}
  .home-header,.site-header{padding:20px 24px}
  .home-header{flex-wrap:wrap;gap:13px}
  .home-header nav{width:100%;justify-content:space-between;gap:14px}
  .home-header nav .home-owner-entry{margin-left:0;padding:0 15px}
  .home-hero{grid-template-columns:minmax(0,1fr);padding-inline:28px;min-height:0}
  .cover-meta .eyebrow{font-size:9px;letter-spacing:.03em}
  .cover-meta>span{font-size:8px}
  .hero-copy h1{font-size:106px}
  .hero-copy{grid-column:1;grid-row:3}
  .hero-statement{font-size:22px}
  .home-hero>.hero-art{grid-column:1;grid-row:2;width:min(100%,560px);justify-self:center;margin:0 0 26px;aspect-ratio:1.12}
  .cover-bottom{grid-row:4}
  .cover-label{display:none}
  .hero-description{font-size:11px}
  .home-open,.home-projects,.home-about{padding-inline:28px}
  .home-section-head h2{font-size:32px}
  .reading-feature{grid-template-columns:1fr}
  .reading-copy{padding:26px}
  .reading-copy h3{font-size:29px}
  .reading-art{min-height:380px}
  .reading-art{padding:0}
  .reading-caption{align-items:flex-start;flex-direction:column;gap:7px}
  .project-grid{gap:56px}
  .project-tile,.project-tile:nth-child(even){grid-template-columns:minmax(0,1fr);grid-template-areas:"art" "copy";gap:28px}
  .project-visual{aspect-ratio:1.5}
  .project-visual>span{font-size:37px}
  .project-visual>figcaption{left:25px;font-size:9px}
  .project-visual>svg{width:190px;height:165px;bottom:25px;opacity:.5}
  .project-tile h3{font-size:17px}
  .home-about{gap:32px}
  .home-about h2{font-size:28px}
  .about-copy>p.about-motto{font-size:30px}
  .home-footer{padding:32px 28px}
  .home-footer small{font-size:8px;margin-left:18px}
  .home-preview-note{margin-inline:28px}
  .intro{padding-inline:28px;gap:25px}
  .intro h1{font-size:39px}
  .directory-study{width:205px}
  .directory-art{width:100%}
  .intro-aside{max-width:27em;font-size:12px}
  .intro>.motion-toggle{right:28px}
  .directory-content{padding:25px 28px 0}
  .search-wrap{max-width:none;flex-basis:100%}
  .section-heading>span{font-size:10px}
  .tool-card{padding:25px}
  .tool-art-panel{margin:-25px -25px 22px}
  .tool-actions{gap:8px}
  .tool-actions .action{gap:13px}
}
@media(max-width:600px){
  .sample-shelf{margin-top:28px}
  .sample-heading{display:block;margin-bottom:17px}
  .sample-heading p{margin-top:7px;font-size:10px}
  .shelf-gesture-hint{display:block;margin-top:8px;font-size:11px}
  .book-samples{min-width:0;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:88%;gap:14px;overflow-x:auto;padding-bottom:14px;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#a68ab2 transparent}
  .book-sample{scroll-snap-align:start;scroll-snap-stop:always}
  .shelf-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;margin-bottom:14px}
  .shelf-topics{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}
  .shelf-controls>button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #d0bfd7;border-radius:50%;background:transparent;color:#544663;font:20px var(--sans)}
  .shelf-controls>button:disabled{opacity:.35;cursor:default}
  .shelf-topics>button{min-width:44px;min-height:44px;padding:6px 10px;border:1px solid #d0bfd7;border-radius:24px;background:#f2eaf5;color:#544663;font:500 12px var(--sans)}
  .shelf-topics>button[aria-pressed=true]{background:#33233f;color:#fff3dc;border-color:#33233f}
  .sample-art{aspect-ratio:1.45}
  .sample-copy{padding:22px}
  .sample-copy h4{font-size:23px}
  .sample-author{font-size:11px}
  .sample-note{font-size:14px}
  .sample-source{font-size:10px}
  .home-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:5px 6px}
  .home-index>span{display:none}
  .home-index>a{display:flex;flex-direction:column;justify-content:center;gap:1px;min-width:0;min-height:50px;padding:6px 3px;font-size:11px;line-height:1.5;white-space:nowrap;border-radius:12px}
  .home-index>a[aria-current="location"]::after{left:8px;right:8px;bottom:4px}
  .lab-home :is(#open-content,#projects,#about,#access-guide){scroll-margin-top:72px}
  .home-access{padding:37px 22px 40px}
  .access-entry{gap:20px;margin-bottom:32px}
  .access-art{aspect-ratio:1.5}
  .access-art figcaption{left:20px;right:20px;bottom:19px}
  .access-art figcaption>span{font-size:14px}
  .access-entry .access-paths{grid-template-columns:minmax(0,1fr);gap:16px}
  .access-layout{grid-template-columns:1fr;gap:24px}
  .access-paths{grid-template-columns:1fr;gap:16px;margin-bottom:32px}
  .access-path{padding:24px 23px 23px}
  .access-path h3{font-size:29px}
  .access-path-meta{margin-bottom:20px}
  .access-path-copy{font-size:14px;margin-bottom:20px}
  .access-path-index{right:23px;bottom:34px;font-size:10px}
  .access-intro{font-size:24px;margin-bottom:12px}
  .access-caption{font-size:14px}
  .access-note.content-notes>summary{font-size:14px}
  .access-answer{font-size:14px}
  .home-header,.site-header{padding:20px}
  .brand{font-size:23px;gap:11px}
  .brand-mark{width:36px;height:36px;font-size:26px}
  .home-header{padding-block:14px;gap:10px}
  .home-header nav{font-size:11px;gap:12px}
  .home-header nav .home-owner-entry{padding:0 13px}
  .home-hero{--hero-gutter:22px;grid-template-columns:minmax(0,1fr);padding:20px var(--hero-gutter) 24px;min-height:0}
  .cover-meta{margin-bottom:14px}
  .cover-meta .eyebrow{font-size:8px;letter-spacing:.025em}
  .cover-meta>span{display:none}
  .hero-copy{padding:0}
  .hero-copy h1{font-size:clamp(37px,12.3vw,68px);margin-bottom:20px;line-height:1.02;letter-spacing:-.06em}
  .hero-word{display:inline}
  .hero-word:first-child::after{content:none}
  .hero-statement{font-size:20px;line-height:1.5;margin-top:18px}
  .hero-actions{margin-top:24px;gap:24px}
  .hero-actions .action-primary{min-width:161px}
  .hero-actions .action-text{font-size:11px}
  .home-hero>.hero-art{width:calc(100% + var(--hero-gutter) + var(--hero-gutter));margin:0 calc(0px - var(--hero-gutter)) 24px;aspect-ratio:1.12;border:0;border-radius:0;background:transparent}
  .home-hero>.hero-art::after{inset:0;background:linear-gradient(180deg,var(--green-dark),transparent 12%,transparent 68%,var(--green-dark))}
  .home-hero>.hero-art .gallery-image{object-position:50% 44%}
  .hero-art figcaption{bottom:20px;left:var(--hero-gutter);right:var(--hero-gutter)}
  .sculpture-caption{font-size:8px;bottom:3%}
  .sculpture-cross-a{left:3%;top:18%}
  .sculpture-cross-b{right:3%;bottom:12%}
  .cover-bottom{margin-top:24px;padding-top:18px;gap:16px}
  .hero-description{font-size:10px;max-width:23em;line-height:1.85}
  .motion-toggle{font-size:9px;padding:7px 11px;min-height:44px}
  .motion-toggle span{margin-left:10px}
  .home-open,.home-projects,.home-about{padding-inline:22px}
  .home-epilogue{padding:38px 22px;gap:27px}
  .epilogue-copy h2{font-size:33px;margin-bottom:18px}
  .epilogue-copy>p:not(.eyebrow){font-size:14px;margin-bottom:23px}
  .epilogue-copy .eyebrow{font-size:9px;margin-bottom:15px}
  .epilogue-art figcaption{left:20px;right:20px;bottom:19px}
  .epilogue-art figcaption>span{font-size:13px}
  .home-open{padding-top:40px;padding-bottom:15px}
  .home-section-head{margin-bottom:24px;gap:12px}
  .home-section-head h2{font-size:30px}
  .home-section-head .eyebrow{font-size:9px;margin-bottom:10px}
  .home-section-head>p{font-size:10px}
  .quiet-label{font-size:10px;padding:3px 8px;gap:5px;white-space:nowrap}
  .reading-feature{grid-template-columns:1fr}
  .reading-art{min-height:0;aspect-ratio:1.12;padding:0}
  .reading-annotation{left:22px;right:22px;top:22px;font-size:7px;letter-spacing:.06em}
  .reading-caption{left:22px;right:22px;bottom:20px;flex-direction:row;align-items:center;gap:12px;padding-top:13px;font-size:9px}
  .reading-caption>span:last-child{font-size:8px;letter-spacing:0}
  .reading-copy{padding:30px 26px 33px}
  .reading-copy .eyebrow{font-size:8px}
  .reading-copy h3{font-size:32px;margin-bottom:18px}
  .reading-copy>p:not(.eyebrow){font-size:14px;margin-bottom:24px}
  .reading-copy>small{font-size:10px}
  .reading-paths{gap:12px}
  .reading-paths>a>span{font-size:11px}
  .reading-paths small{font-size:10px}
  .book-sample[id]{scroll-margin-top:72px}
  .home-projects{padding-top:43px;padding-bottom:43px}
  .project-grid{grid-template-columns:1fr;gap:56px}
  .project-visual{aspect-ratio:1.25}
  .project-visual>span{font-size:47px}
  .project-visual>svg{width:230px;height:196px;right:-31px;bottom:10px;opacity:.72}
  .project-visual>.project-artwork{width:280px;height:231px;right:-28px;bottom:-22px;opacity:1}
  .project-visual>figcaption{left:22px;bottom:22px;font-size:8px}
  .project-top{margin-bottom:13px}
  .project-tile h3{font-size:16px;margin-bottom:12px}
  .project-copy>p{font-size:15px}
  .project-copy>p.project-motto{font-size:32px;margin-bottom:20px}
  .project-tile[data-project=models] .project-copy{padding:22px}
  .home-about{display:block;padding-top:37px;padding-bottom:39px}
  .about-art{aspect-ratio:1.5;margin:0 0 27px}
  .about-art figcaption{left:19px;right:19px;bottom:18px;font-size:7px}
  .home-about h2{font-size:30px;margin-bottom:24px}
  .about-copy>p{font-size:15px;margin-bottom:21px}
  .about-copy>p.about-motto{font-size:30px}
  .home-about .working-notes{grid-template-columns:1fr;gap:22px;margin-top:26px;padding-top:24px}
  .home-footer{padding:26px 22px;gap:16px}
  .home-footer>span{font-size:30px}
  .home-footer small{display:block;font-size:8px;margin:9px 0 0}
  .home-footer>a{font-size:10px}
  .home-preview-note{margin-inline:22px;font-size:9px;padding-bottom:15px}
  .site-header{align-items:flex-start;gap:12px}
  .header-right{max-width:163px;gap:4px 12px}
  .local-label{font-size:8px;padding:4px 6px}
  .view-switch{font-size:10px}
  .portal-signout button{font-size:10px;padding:8px 12px}
  .intro{display:block;padding:31px 22px 31px;min-height:0}
  .intro .eyebrow{font-size:9px;margin-bottom:17px}
  .intro h1{font-size:39px;letter-spacing:-.07em;line-height:1.2}
  .intro-copy{font-size:15px;margin-top:14px}
  .intro-aside{font-size:12px;margin-top:17px}
  .intro-aside br{display:initial}
  .directory-study{display:none}
  .intro>.motion-toggle{position:static;margin-top:18px;color:var(--ink);border-color:var(--line);background:var(--sheet)}
  .intro>.motion-toggle span{color:var(--ink)}
  .intro-actions{gap:12px;margin-top:21px}
  .intro-entry{min-height:46px;padding:10px 18px;font-size:11px}
  .directory-art{width:100%;margin:27px 0 0;aspect-ratio:1.5}
  .directory-art figcaption{bottom:17px;left:18px;right:18px;gap:8px}
  .directory-art-title{font-size:15px}
  .directory-art-note{font-size:9px}
  .directory-content{padding:21px 20px 0}
  .directory-controls{padding-bottom:18px;gap:14px;margin-bottom:25px}
  .search-wrap{min-height:46px;padding:0 15px}
  .search-wrap input{font-size:12px}
  .filters button{font-size:11px;min-height:40px;padding:9px 14px}
  .result-count{font-size:10px}
  .section-heading{margin-bottom:14px;gap:13px}
  .section-heading h2{font-size:14px;gap:9px;white-space:nowrap}
  .section-heading>span{font-size:9px;max-width:21em;text-align:right}
  .section-index{font-size:9px}
  .directory-section{margin-bottom:28px}
  .community-card{display:block;padding:23px}
  .community-mark{display:none}
  .item-meta{gap:8px;font-size:10px}
  .stage-label{font-size:9px;padding:3px 6px}
  .community-card h3{font-size:28px;margin-top:15px}
  .community-card .description{font-size:13px}
  .community-note{font-size:10px;margin-top:8px}
  .community-actions{gap:17px;margin-top:20px}
  .community-actions .action{font-size:11px;gap:13px}
  .community-actions .action-primary{padding:8px 15px}
  .community-actions small{font-size:9px;margin-top:6px}
  .tool-grid{grid-template-columns:1fr;gap:15px}
  .tool-card{padding:25px 24px 23px}
  .tool-art-panel{margin:-25px -24px 21px;aspect-ratio:1.5}
  .tool-card h3{font-size:30px}
  .tool-card[data-tool=inbox] h3,.tool-card[data-tool=radio] h3{font-size:34px}
  .tool-card[data-tool=radio] .tool-scenario-question{font-size:20px}
  .tool-card .description{font-size:14px;margin-bottom:21px}
  .tool-scenario-question{font-size:18px}
  .tool-art{width:165px;right:-12px;top:38px;opacity:.2}
  .tool-top{margin-bottom:23px}
  .tool-actions{padding-top:16px;gap:11px}
  .tool-actions .action-primary{font-size:11px;padding:8px 15px;gap:18px}
  .tool-actions .action-text{font-size:11px}
  .site-footer{flex-direction:column;align-items:flex-start;gap:9px;margin-top:29px;padding:24px 0;font-size:9px}
  .footer-links{gap:24px}
  .footer-links a{font-size:10px}
}
@media(max-width:360px){
  .home-header,.site-header{padding-inline:16px}
  .home-hero{--hero-gutter:18px;padding-inline:var(--hero-gutter)}
  .home-open,.home-projects,.home-about{padding-inline:18px}
  .brand{font-size:21px;gap:9px}
  .brand-mark{width:33px;height:33px;font-size:24px}
  .brand small{font-size:7px}
  .header-right{max-width:139px;gap:3px 7px}
  .home-header nav{gap:7px;font-size:10px}
  .home-header nav .home-owner-entry{padding:0 10px}
  .cover-meta .eyebrow{font-size:7px;letter-spacing:0}
  .hero-copy h1{font-size:clamp(36px,12.3vw,44px)}
  .hero-actions{gap:21px}
  .hero-actions .action-primary{min-width:146px;padding-inline:20px;font-size:12px}
  .hero-actions .action-text{font-size:10px}
  .hero-description{font-size:9px}
  .cover-bottom{gap:11px}
  .project-visual>span{font-size:42px}
  .project-visual>svg{right:-41px;opacity:.55}
  .intro{padding-inline:18px}
  .intro h1{font-size:34px}
  .directory-content{padding-inline:16px}
  .community-card{padding:21px}
  .community-actions{gap:12px}
  .community-actions .action{font-size:10px;gap:11px}
  .community-actions .action-primary{padding-inline:12px}
  .tool-card{padding:23px}
  .tool-art-panel{margin:-23px -23px 21px}
  .filters button{padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){
  .art-viewer::backdrop{transition:none!important}
  .project-tile:hover .gallery-image{transform:none}
  @view-transition{navigation:none}
  .book-samples{scroll-behavior:auto}
  html{scroll-behavior:auto}
  *,*::before,*::after{transition:none!important;animation:none!important}
  ::view-transition-group(*),::view-transition-image-pair(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}

/* Public projects share one hierarchy; the owner directory stays independent. */
.lab-home .home-index{justify-content:center;gap:24px;padding:8px max(40px,calc((100% - 1200px)/2));min-height:62px}
.lab-home .home-index>span{position:absolute;left:max(40px,calc((100% - 1200px)/2));font-size:11px;color:#526576;letter-spacing:.12em;margin:0}
.home-index-chapters{display:flex;align-items:center;gap:26px;margin:0}
.lab-home .home-index-chapters>a{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:70px;min-height:44px;padding:6px 12px;font-size:15px;border-radius:0;color:#526576}
.lab-home .home-index-chapters>a[aria-current=location]{color:#183832;background:transparent}
.lab-home .home-index-chapters>a[aria-current=location]::after{content:"";position:absolute;left:50%;width:28px;bottom:3px;height:2px;background:#326e74;transform:translateX(-50%)}
.lab-home .home-header nav{width:auto;justify-content:flex-end}
.lab-home .home-footer{flex-wrap:wrap}
.home-footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:24px}
.home-footer-links>a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#bdc7b4}
.home-footer-links>a:hover{color:var(--lime)}
.lab-home #projects,.lab-home #open-content,.lab-home #about{scroll-margin-top:64px}
.lab-home .home-projects{padding:0;background:var(--paper)}
.projects-heading{padding:44px max(40px,calc((100% - 1200px)/2)) 25px;margin:0}
.projects-heading .eyebrow{color:#526576;font-size:11px}
.projects-heading>p{font-size:14px}
.lab-home .home-open{padding-top:0;padding-bottom:40px}
.project-tools{background:#e7eee9;padding:42px max(40px,calc((100% - 1200px)/2)) 48px}
.lab-home .reading-art{min-height:340px}
.lab-home .reading-art .gallery-image{width:100%;object-fit:cover}
.lab-home .reading-copy{padding:30px 36px}
.lab-home .project-top{margin-bottom:14px}
.lab-home .project-top>.project-number{display:block;width:auto;height:auto;border:0;border-radius:0;font:11px var(--mono);letter-spacing:.09em;color:var(--muted)}
.lab-home .project-state,.lab-home .service-project-meta small{font-size:13px}
.lab-home .reading-copy h3,.lab-home .project-tile h3{font:500 40px/1.35 var(--sans);letter-spacing:-.045em;color:var(--ink);margin:0 0 13px}
.lab-home .reading-copy>p.reading-motto,.lab-home .project-copy>p.project-motto{font:400 20px/1.65 var(--sans);letter-spacing:0;color:var(--project-accent,var(--muted));margin:0 0 15px}
.lab-home .reading-copy>p:not(.reading-motto){font-size:16px;line-height:1.9;margin:0 0 22px;color:var(--muted)}
.lab-home .reading-copy>small{font-size:12px;line-height:1.8;margin-top:16px}
.lab-home .sample-heading{margin-top:28px}
.sample-heading h4{font-size:20px;font-weight:500;margin:0;line-height:1.5;letter-spacing:-.025em}
.sample-copy h5{font-size:23px;font-weight:500;line-height:1.5;letter-spacing:-.025em;text-wrap:balance;margin:0 0 11px}
.lab-home .sample-author{font-size:13px;margin-bottom:12px}
.lab-home .sample-theme,.lab-home .sample-question>span{font-size:12px}
.lab-home .sample-copy{padding:22px 24px 23px}
.lab-home .sample-question{font-size:14px;margin-top:15px}
.lab-home .sample-note{font-size:15px;line-height:1.8}
.lab-home .sample-detail{font-size:14px;margin-top:20px}
.lab-home .sample-source{font-size:12px;line-height:1.8;margin-top:16px}
.lab-home .project-grid{gap:36px}
.lab-home .project-tile{gap:40px}
.lab-home .project-copy>p:not(.project-motto){margin-bottom:18px}
.lab-home .project-tile[data-project=models]{padding:30px;gap:36px}
.lab-home .project-tile[data-project=models] .gallery-image{width:100%;object-fit:cover}
.lab-home .project-actions{gap:14px;margin-top:10px}
.lab-home .project-actions .project-action-primary{background:var(--project-accent);color:#fff8ef;border-color:var(--project-accent);font-size:14px;padding-inline:20px}
.lab-home .project-tile[data-project=models] .project-action-primary{color:#173746}
.lab-home .project-actions .project-action-secondary{font-size:14px;background:transparent;color:var(--ink);border-color:transparent;border-radius:0;padding:8px 3px;box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--project-accent) 45%,transparent)}
.lab-home .project-actions .project-action-secondary:hover{background:transparent;color:var(--ink);box-shadow:inset 0 -2px 0 var(--project-accent)}
.lab-home .service-projects{margin-top:36px}
.lab-home .service-project-copy{padding:24px 28px 27px}
.lab-home .service-project-copy h3{font-size:34px;line-height:1.35;margin-bottom:13px;letter-spacing:-.045em}
.lab-home .service-project-meta{font-size:11px;margin-bottom:14px}
.lab-home .service-project-copy .project-actions{margin-top:18px}
.lab-home .home-about{padding-top:42px;padding-bottom:48px;gap:28px 50px}
.lab-home .about-copy>p.about-motto{font-size:30px;line-height:1.5;margin:0 0 21px}
.lab-home .about-copy>p:last-child{margin-bottom:0}
.lab-home .home-about .eyebrow{font-size:11px;color:#526576}
@media(min-width:761px) and (max-width:980px){
  .lab-home .reading-feature{grid-template-columns:1.05fr 1fr}
  .lab-home .reading-art{aspect-ratio:auto;min-height:340px}
  .lab-home .project-tile{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"art copy"}
  .lab-home .project-tile:nth-child(even){grid-template-areas:"copy art"}
  .lab-home .project-tile[data-project=models] .project-copy{padding:0}
  .lab-home .project-tile[data-project=models] .project-visual{border-radius:14px}
  .lab-home .project-copy>p:not(.project-motto){font-size:15px}
}
@media(max-width:760px){
  .lab-home .home-index{display:flex;gap:12px;min-height:60px;padding:7px 16px}
  .lab-home .home-index>span{display:none}
  .home-index-chapters{gap:24px;margin:0}
  .lab-home .home-index-chapters>a{min-width:61px;min-height:44px;font-size:14px;padding:6px 10px}
  .lab-home .home-header nav{gap:18px}
  .projects-heading{padding:31px 22px 20px;gap:18px;align-items:center}
  .projects-heading h2{font-size:30px}
  .projects-heading>p{font-size:12px;max-width:10em;text-align:right}
  .lab-home .home-open{padding-bottom:28px}
  .project-tools{padding:30px 22px 32px}
  .lab-home .reading-art{min-height:0;aspect-ratio:1.5}
  .lab-home .reading-copy{padding:25px 25px 28px}
  .lab-home .reading-copy h3,.lab-home .project-tile h3{font-size:32px;margin-bottom:10px}
  .lab-home .reading-copy>p.reading-motto,.lab-home .project-copy>p.project-motto{font-size:18px;margin-bottom:14px}
  .lab-home .reading-copy>p:not(.reading-motto){font-size:15px;margin-bottom:20px}
  .lab-home .project-top>.project-number{font-size:10px}
  .lab-home .project-state,.lab-home .service-project-meta small{font-size:12px}
  .lab-home .project-grid{gap:30px}
  .lab-home .project-tile{gap:24px}
  .lab-home .project-tile[data-project=models]{padding:0;gap:0}
  .lab-home .project-tile[data-project=models] .project-copy{padding:24px}
  .lab-home .project-visual,.lab-home .project-tile[data-project=models] .project-visual{aspect-ratio:1.5}
  .lab-home .service-projects{margin-top:30px}
  .lab-home .service-project-copy{padding:24px}
  .lab-home .service-project-copy h3{font-size:32px}
  .lab-home .service-project-copy .project-actions{gap:12px}
  .lab-home .sample-heading h4{font-size:18px}
  .lab-home .sample-copy{padding:20px}
  .lab-home .sample-copy h5{font-size:23px}
  .lab-home .home-about{padding-top:31px;padding-bottom:34px}
  .lab-home .about-copy>p.about-motto{font-size:25px;line-height:1.5;margin-bottom:20px}
}
