@layer reset, base, layout, components;
@layer reset { *,*::before,*::after{box-sizing:border-box} body,h1,h2,h3,p,figure{margin:0} img{display:block;max-width:100%;height:auto}button,input{font:inherit} }
@layer base {
  :root{--ink:#282d29;--muted:#596159;--accent:#924530;--wash:#eeede6;--rule:#d3d5ca;--paper:#f8f7f2;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace;--serif:Georgia,'Times New Roman',serif;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:100%;line-height:1.65;font-synthesis:none}
  body{min-width:320px}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,p,a{overflow-wrap:anywhere}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.14;letter-spacing:-.025em}h1{font-size:clamp(2.8rem,6.1vw,5.25rem)}h2{font-size:clamp(2rem,3.5vw,2.7rem)}h3{font-size:1.65rem}p+p{margin-top:1rem}em{font-weight:400}ul{padding-left:1.25rem}::selection{background:#e7d9ce}main:focus{outline:none}
}
@layer layout {
  .wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.section{padding-block:76px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:27px;border-bottom:1px solid var(--rule)}.site-header nav{display:flex;flex-wrap:wrap;gap:1.6rem}.site-header nav a{text-decoration:none;font-size:.875rem;padding-block:.4rem;border-bottom:1px solid transparent}.site-header nav a[aria-current]{color:var(--accent);border-color:var(--accent)}.hero{display:grid;grid-template-columns:1.6fr 1fr;gap:72px;align-items:start;padding-block:76px 88px}.hero h1{font-size:clamp(2.8rem,6.1vw,4.75rem);margin:19px 0 28px}.hero h1 em{color:var(--accent)}.hero-intro{font-size:1.25rem;line-height:1.6;max-width:36rem}.hero-context{font-size:1rem;color:var(--muted);max-width:35rem}.hero-portrait{padding-top:13px;max-width:348px;justify-self:end}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:34px}.section-heading h2{margin-top:10px}.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:34px}.writing-band{background:var(--wash)}.writing-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:76px;align-items:center;padding-block:65px}.writing-feature h2{margin-block:14px 20px;font-size:clamp(1.8rem,3vw,2.55rem)}.writing-feature h2 a{text-decoration:none}.writing-feature .metadata{margin-block:18px}.coverage-row{display:grid;grid-template-columns:230px 1fr 28px;gap:32px;padding-block:27px;border-top:1px solid var(--rule)}.coverage-row h3{font-size:1.5rem;line-height:1.3}.coverage-row h3 a{text-decoration:none}.coverage-row p:not(.metadata){color:var(--muted);margin-top:10px;font-size:.95rem}.site-footer{margin-top:76px;padding-block:35px;display:grid;grid-template-columns:1fr auto;gap:24px;border-top:1px solid var(--rule)}.footer-links{display:flex;flex-wrap:wrap;gap:25px;align-self:start}.site-footer p{font-size:.875rem;color:var(--muted);margin-top:8px}.site-footer .copyright{grid-column:1/-1;font-size:.8125rem;margin-top:10px}.page-heading{padding-block:66px 45px;max-width:820px}.page-heading h1{font-size:clamp(2.8rem,5vw,4.5rem);margin-block:15px 24px}.page-heading .lede{font-size:1.2rem;color:var(--muted);max-width:43rem}.reading{max-width:720px}.content-section{padding-block:48px;border-top:1px solid var(--rule)}.content-section h2{margin-bottom:28px}.project-row{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-block:60px;border-top:1px solid var(--rule);align-items:center}.project-row h2{margin-block:12px 22px}.project-row .photo{margin:0}.project-row p{color:var(--muted)}.project-row .text-link{display:inline-block;margin-top:22px}.project-row.no-image{grid-template-columns:1.25fr 1fr}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:75px;align-items:start}.about-grid .photo{max-width:320px;justify-self:end}.prose{max-width:70ch;font-size:1.125rem}.prose h2{margin:2.4rem 0 1rem}.prose h3{margin:2rem 0 1rem}.prose p{margin-bottom:1.2rem}.prose a{color:var(--accent)}.prose pre{overflow:auto;font-size:.875rem;padding:1.5rem;background:var(--wash)}.prose blockquote{border-left:3px solid var(--accent);margin-inline:0;padding-left:1.5rem;color:var(--muted)}.prose img{height:auto}.article-page{padding-block:55px 20px}.article-page .page-heading{padding-top:25px}.article-page h1{font-size:clamp(2.5rem,5vw,4rem)}
}
@layer components {
  .preview-bar{background:var(--wash);text-align:center;padding:6px 16px;font-size:.75rem;color:var(--muted);letter-spacing:.015em}.preview-bar span{margin-inline:8px}.skip-link{position:absolute;top:-100px;left:16px;background:var(--accent);color:white;padding:12px 20px;z-index:10}.skip-link:focus{top:10px;color:white}.wordmark{display:flex;align-items:center;gap:15px;text-decoration:none;white-space:nowrap;font-size:.925rem;font-weight:600}.monogram{font-family:var(--serif);font-size:2.5rem;font-weight:400;letter-spacing:-.12em;line-height:1}.monogram span{color:var(--accent)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:600;color:var(--accent);line-height:1.65}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:26px;margin-top:30px}.button{display:inline-flex;align-items:center;gap:28px;padding:12px 19px;background:var(--accent);color:white;text-decoration:none;font-size:.9rem}.button:hover{background:var(--ink);color:white}.text-link{color:var(--accent);font-size:.9rem;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:3px}.text-link span{margin-left:8px}.photo{margin:0}.photo img{width:100%;object-fit:cover;background:var(--wash)}.photo figcaption{margin-top:8px;font-size:.75rem;color:var(--muted);line-height:1.5}.photo figcaption a{text-decoration:none}.photo figcaption a:hover{text-decoration:underline}.hero-portrait .photo img{aspect-ratio:650/733;object-position:center}.portrait-note{font-family:var(--serif);font-style:italic;color:var(--muted);margin-top:20px!important;font-size:1.2rem;line-height:1.5}.work-card{padding-top:20px;border-top:1px solid var(--rule);display:flex;flex-direction:column}.number{font-size:.875rem;color:var(--accent);font-family:var(--serif);font-style:italic}.work-card h3{margin-block:18px 12px;font-size:1.75rem}.work-card h3 a{text-decoration:none}.role{font-size:.8125rem;color:var(--accent);line-height:1.5;min-height:2.6em}.work-card>p:not(.role){color:var(--muted);font-size:.95rem;margin-block:15px 22px}.quiet-link{margin-top:auto;font-size:.875rem;text-decoration:none;color:var(--accent)}.metadata{font-size:.8125rem;color:var(--muted);line-height:1.7}.metadata span{font-size:.75rem}.row-arrow{color:var(--accent);font-size:1.3rem}.footer-name{font-family:var(--serif);font-size:1.3rem;text-decoration:none}.footer-links a{font-size:.875rem;text-decoration:none}.newsletter{background:var(--wash);padding:38px 40px;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.newsletter h2{font-size:1.85rem;margin:10px 0 12px}.newsletter p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.signup-preview label{display:block;font-size:.875rem;margin-bottom:8px}.signup-fields{display:flex;gap:8px}.signup-fields input{min-width:0;width:100%;border:1px solid #b9bcb0;padding:11px 12px;background:var(--paper);color:var(--muted);font-size:.875rem;opacity:1}.signup-fields button{white-space:nowrap;border:0;background:#e3e5dc;color:#50584f;padding:11px 15px;font-size:.875rem;opacity:1}.signup-preview p{font-size:.75rem!important;margin-top:10px;line-height:1.5}.publication-item{padding-block:26px;border-top:1px solid var(--rule)}.publication-item h3{margin-block:10px 13px;font-size:1.6rem;line-height:1.3;max-width:50rem}.publication-item h3 a{text-decoration:none}.publication-item>p{max-width:48rem;color:var(--muted)}.publication-item .text-link{display:inline-block;margin-top:14px}.group-links{display:flex;flex-wrap:wrap;gap:15px 28px;margin-top:20px}.archive-nav{display:flex;flex-wrap:wrap;gap:10px 24px;margin-bottom:35px;padding-block:18px;border-block:1px solid var(--rule)}.archive-nav a{font-size:.9rem;color:var(--accent)}.archive-year{display:grid;grid-template-columns:110px 1fr;gap:30px;padding-block:35px;border-top:1px solid var(--rule);scroll-margin-top:30px}.archive-year h2{font-size:2.1rem}.archive-list{list-style:none;padding:0;margin:0}.archive-list li{padding:20px 0;border-bottom:1px solid var(--rule)}.archive-list li:first-child{padding-top:0}.archive-list li:last-child{border:0;padding-bottom:0}.archive-list h3{font-size:1.3rem;line-height:1.4;letter-spacing:-.015em}.archive-list h3 a{text-decoration:none}.archive-list .metadata{margin-top:7px}.archive-note{font-size:.875rem;color:var(--muted);max-width:48rem;margin-bottom:36px}.profile-links{display:flex;flex-wrap:wrap;gap:20px 30px;margin-top:25px}.contact-block{margin-top:55px;padding:35px;background:var(--wash)}.contact-block h2{margin-bottom:20px}.contact-email{font-family:var(--serif);font-size:clamp(1.45rem,3vw,2.2rem);color:var(--accent);overflow-wrap:anywhere}.aside-note{border-left:2px solid var(--accent);padding:5px 0 5px 25px;color:var(--muted)}.publication-count{font-size:.8125rem;color:var(--muted);margin-top:12px}.back-link{font-size:.875rem;color:var(--accent)}
}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.site-header{gap:20px;align-items:flex-start}.site-header nav{gap:16px;justify-content:flex-end}.hero{gap:40px;grid-template-columns:1.5fr 1fr}.hero h1{font-size:clamp(2.8rem,6.1vw,4.4rem)}.coverage-row{grid-template-columns:180px 1fr 20px;gap:25px}.writing-feature{gap:40px}.work-grid{gap:22px}.newsletter{gap:30px;padding:30px}.about-grid{gap:40px}.project-row{gap:40px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{display:block;padding-block:20px}.site-header nav{justify-content:flex-start;gap:4px 19px;margin-top:21px}.site-header nav a{padding:7px 0}.hero{grid-template-columns:1fr;padding-block:45px 50px;gap:35px}.hero h1{font-size:clamp(2.8rem,10.5vw,4.3rem);margin-top:15px}.hero-intro{font-size:1.125rem}.hero-portrait{max-width:290px;justify-self:start;padding-top:0;display:grid;grid-template-columns:1fr;gap:0}.portrait-note{display:none}.section{padding-block:48px}.section-heading{align-items:start;flex-direction:column;gap:19px;margin-bottom:26px}.work-grid{grid-template-columns:1fr;gap:30px}.work-card .role{min-height:0}.work-card h3{margin-top:12px}.work-card>p:not(.role){margin-top:10px}.writing-feature{grid-template-columns:1fr;padding-block:42px;gap:28px}.coverage-row{grid-template-columns:1fr 20px;gap:8px 16px;padding-block:22px}.coverage-row>.metadata{grid-column:1/-1}.coverage-row .metadata br{display:none}.coverage-row .metadata span{margin-left:8px}.coverage-row h3{font-size:1.35rem}.newsletter{grid-template-columns:1fr;padding:27px 23px;gap:25px}.site-footer{grid-template-columns:1fr;margin-top:45px}.page-heading{padding-block:45px 35px}.page-heading h1{font-size:3rem}.page-heading .lede{font-size:1.1rem}.project-row,.project-row.no-image{grid-template-columns:1fr;padding-block:38px;gap:28px}.content-section{padding-block:35px}.about-grid{grid-template-columns:1fr;gap:30px}.about-grid .photo{justify-self:start;max-width:270px}.archive-year{grid-template-columns:1fr;gap:25px}.contact-block{padding:25px;margin-top:35px}.prose{font-size:1.0625rem}.publication-item h3{font-size:1.4rem}.signup-fields{flex-wrap:wrap}.signup-fields button{width:100%}}
@media(prefers-reduced-motion:no-preference){a{transition:color .15s,background-color .15s}html{scroll-behavior:smooth}}

.hero>*,.work-grid>*,.writing-feature>*,.coverage-row>*,.project-row>*,.newsletter>*,.about-grid>*{min-width:0}

/* Shared studio presentation, followed by homepage composition and responsive rules. */
body.studio {
  min-width: 0;
  background: var(--paper);
  color: var(--ink);
}

.studio .wrap { width: min(1200px, calc(100% - 80px)); }
.studio .preview-bar { background: #e6e8df; color: #50584f; }
.studio .site-header { padding-block: 23px; }
.studio .wordmark { gap: 13px; white-space: normal; }
.studio .monogram { font-size: 2.35rem; }
.studio .site-header nav { gap: 1.6rem; }
.studio .site-header nav a { font-size: .875rem; }
.studio .site-footer { margin-top: 56px; }
.studio-label {
  color: var(--muted);
  font: 400 .75rem/1.7 var(--mono);
  letter-spacing: .065em;
  text-transform: uppercase;
}
.studio-link {
  display: inline-flex;
  align-items: baseline;
  gap: 12px;
  color: var(--accent);
  font-size: .9rem;
  line-height: 1.6;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 3px;
}
.studio-link:hover { color: var(--ink); }
.studio-link span { flex: none; }
.studio-opening { padding-top: 39px; }
.studio-intro {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 70px;
  align-items: end;
  margin-bottom: 33px;
}
.studio-intro > *, .studio-board > *, .studio-person > *, .studio-story > *,
.studio-section-heading > *, .studio-related > *, .studio-article > * { min-width: 0; }
.studio-intro h1 {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: clamp(3.2rem, 5.8vw, 5.05rem);
  font-weight: 550;
  letter-spacing: -.055em;
  line-height: 1.02;
  margin-top: 16px;
}
.studio-intro h1 em {
  font-family: var(--serif);
  font-weight: 400;
  color: var(--accent);
  letter-spacing: -.045em;
}
.studio-intro-copy { max-width: 370px; padding-bottom: 8px; }
.studio-intro-copy > p { font-size: 1.075rem; line-height: 1.7; }
.studio-intro-copy .studio-link { margin-top: 18px; }
.studio-board { display: grid; grid-template-columns: 1.65fr 1fr; gap: 25px; }
.specimen-label {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 3px 16px;
  border-top: 1px solid var(--ink);
  padding: 10px 0;
  font: .75rem/1.7 var(--mono);
  letter-spacing: .05em;
  text-transform: uppercase;
}
.specimen-label span:last-child { color: var(--muted); }
.board-material img { aspect-ratio: 16 / 10; object-fit: cover; }
.studio .photo figcaption { font: .75rem/1.5 var(--mono); margin-top: 7px; color: var(--muted); }
.studio .photo figcaption a { text-decoration: underline; text-decoration-color: var(--rule); }
.specimen-caption { display: grid; grid-template-columns: .8fr 1fr; gap: 24px; margin-top: 20px; padding-top: 15px; border-top: 1px solid var(--rule); }
.specimen-caption h2 { font-size: 1.65rem; line-height: 1.22; }
.specimen-caption p { font-size: .9rem; color: var(--muted); line-height: 1.7; }
.board-printhead img { aspect-ratio: 2.15 / 1; object-fit: cover; object-position: center 42%; }
.machine-caption { margin-top: 9px; font-size: .875rem; }
.studio-person { display: grid; grid-template-columns: 91px 1fr; gap: 22px; border-top: 1px solid var(--rule); padding-top: 22px; margin-top: 23px; align-items: start; }
.portrait-small img { aspect-ratio: 1 / 1.12; object-fit: cover; }
.studio .portrait-small figcaption { font-size: .75rem; line-height: 1.6; }
.studio-person h2 { font-size: 1.85rem; margin: 7px 0 9px; }
.studio-person .studio-label { font-size: .75rem; }
.studio-person p:not(.studio-label) { font-size: .875rem; color: var(--muted); line-height: 1.65; }
.studio-person .studio-link { font-size: .8125rem; margin-top: 12px; }
.studio-work { padding-block: 83px 70px; scroll-margin-top: 28px; }
.studio-section-heading { display: grid; grid-template-columns: 230px 1fr; gap: 35px; align-items: baseline; margin-bottom: 45px; }
.studio-section-heading h2 { font-size: clamp(2rem, 3.3vw, 2.75rem); max-width: 47rem; }
.studio-section-heading > div > p { margin-top: 20px; color: var(--muted); font-size: 1.025rem; max-width: 43rem; }
.studio-story { display: grid; grid-template-columns: .95fr 1.05fr; align-items: start; gap: 67px; padding: 51px 0 64px; border-top: 1px solid var(--rule); }
.story-copy h3 { font-size: clamp(2.1rem, 3.3vw, 2.9rem); margin: 15px 0 24px; line-height: 1.15; }
.story-copy h3 em { color: var(--accent); }
.story-copy > p:not(.studio-label) { font-size: .975rem; color: var(--muted); }
.story-copy > p + p { margin-top: 16px; }
.story-detail { border-top: 1px solid var(--rule); padding-top: 17px; margin: 24px 0; display: grid; grid-template-columns: 76px 1fr; gap: 16px; }
.story-detail dt { font: .75rem/1.8 var(--mono); text-transform: uppercase; color: var(--muted); }
.story-detail dd { font-size: .8125rem; margin: 0; line-height: 1.75; }
.story-links { display: flex; flex-wrap: wrap; gap: 18px 25px; }
.story-image { margin-top: 3px; }
.story-image img { width: 100%; }
.image-note { font-size: .8125rem; color: var(--muted); padding-left: 17px; border-left: 2px solid #a9afa2; margin-top: 20px !important; max-width: 32rem; }
.story-reverse .story-copy { grid-column: 2; grid-row: 1; }
.story-reverse .story-image { grid-column: 1; grid-row: 1; }
.hardware-study { margin-top: 6px; }
.campaign-record { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr)); gap: 13px 30px; border-block: 1px solid var(--rule); padding: 20px 0; margin: 24px 0; }
.campaign-record > div { min-width: 0; overflow-wrap: anywhere; }
.campaign-record strong { display: block; font-family: var(--serif); font-size: 1.75rem; font-weight: 400; line-height: 1.2; }
.campaign-record span { display: block; font-size: .75rem; color: var(--muted); margin-top: 7px; }
.campaign-record > a { grid-column: 1 / -1; font-size: .75rem; color: var(--accent); margin-top: 2px; }
.campaign-record > a span { display: inline; color: inherit; }
.studio-related { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid var(--rule); padding-block: 31px 36px; gap: 65px; }
.studio-related h3 { margin: 12px 0 17px; font-size: 1.8rem; }
.studio-related p:not(.studio-label) { color: var(--muted); font-size: .925rem; max-width: 31rem; }
.studio-related .studio-link { margin-top: 20px; }
.studio-writing { background: #e9ece2; border-block: 1px solid #d5dacb; padding-block: 55px 53px; }
.studio-writing .studio-section-heading { margin-bottom: 32px; }
.writing-topics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; border-top: 1px solid #bdc4b6; padding-block: 20px 35px; }
.writing-topics p { display: flex; align-items: baseline; gap: 13px; font-size: .85rem; margin: 0; }
.writing-topics span { font-family: var(--mono); font-size: .75rem; color: var(--muted); }
.studio-article { display: grid; grid-template-columns: 230px 1fr; gap: 35px; border-top: 1px solid #bdc4b6; padding-block: 28px; }
.studio-article h3 { font-size: 1.8rem; max-width: 42rem; line-height: 1.3; }
.studio-article h3 a { text-decoration: none; }
.studio-article p:not(.studio-label):not(.metadata) { margin-top: 15px; color: var(--muted); max-width: 38rem; font-size: .975rem; }
.studio-article .metadata { margin-top: 9px; }
.studio-article .studio-link { margin-top: 19px; }
.writing-all { margin-left: 265px; }
.studio-coverage { padding-block: 65px; }
.studio-coverage .studio-section-heading { margin-bottom: 32px; }
.studio-coverage .coverage-row { grid-template-columns: 230px 1fr 25px; gap: 35px; }
.studio-coverage .coverage-row h3 { font-size: 1.4rem; }
.coverage-all { margin-top: 24px; }
.studio-contact { display: grid; grid-template-columns: 1fr 2fr; gap: 30px 35px; border-top: 1px solid var(--ink); padding-top: 45px; padding-bottom: 48px; }
.studio-contact h2 { font-size: clamp(2rem, 3.4vw, 2.8rem); }
.studio-contact h2 em { color: var(--accent); }
.studio-contact div > p { margin-top: 20px; max-width: 39rem; color: var(--muted); font-size: 1rem; }
.studio-contact > .studio-link { grid-column: 2; justify-self: start; font-size: 1rem; }
.studio .newsletter { padding: 29px 32px; border: 1px solid var(--rule); background: transparent; }
.studio .newsletter h2 { font-size: 1.65rem; }
.studio .newsletter .eyebrow { font-family: var(--mono); font-weight: 400; font-size: .75rem; color: var(--muted); }

@media (max-width: 1000px) {
  .studio .wrap { width: calc(100% - 56px); }
  .studio-intro { gap: 40px; }
  .studio-intro h1 { font-size: clamp(3rem, 6.5vw, 4.3rem); }
  .studio-board { grid-template-columns: 1.45fr 1fr; gap: 24px; }
  .specimen-caption { grid-template-columns: 1fr; gap: 9px; }
  .studio-person { grid-template-columns: 75px 1fr; gap: 16px; }
  .studio-person h2 { font-size: 1.65rem; }
  .studio-section-heading, .studio-article { grid-template-columns: 175px 1fr; gap: 28px; }
  .studio-story { gap: 36px; }
  .studio-coverage .coverage-row { grid-template-columns: 175px 1fr 20px; gap: 28px; }
  .writing-all { margin-left: 203px; }
  .studio-related { gap: 36px; }
}

@media (max-width: 800px) {
  .studio .site-header { display: block; }
  .studio .site-header nav { justify-content: flex-start; margin-top: 18px; gap: 6px 24px; }
  .studio-intro { grid-template-columns: 1fr; gap: 24px; }
  .studio-intro-copy { max-width: 34rem; }
  .studio-board { grid-template-columns: 1fr; gap: 29px; }
  .board-material img { aspect-ratio: 16 / 9; }
  .board-secondary { display: grid; grid-template-columns: 1fr 1fr; gap: 29px; align-items: start; }
  .studio-person { margin: 0; border-top: 1px solid var(--ink); padding-top: 16px; }
  .board-printhead img { aspect-ratio: 1.55 / 1; }
  .specimen-caption { grid-template-columns: 1fr 1fr; gap: 25px; }
  .studio-work { padding-top: 65px; }
  .studio-story { grid-template-columns: 1fr; gap: 32px; }
  .story-reverse .story-copy, .story-reverse .story-image { grid-column: auto; grid-row: auto; }
  .story-copy { max-width: 39rem; }
  .story-image { width: min(100%, 580px); }
  .hardware-study { width: min(100%, 480px); }
  .studio-related { gap: 28px; }
  .studio-section-heading { grid-template-columns: 1fr; gap: 15px; }
  .studio-section-heading > div > p { max-width: 39rem; }
  .studio-contact { grid-template-columns: 1fr; gap: 20px; }
  .studio-contact > .studio-link { grid-column: 1; }
  .studio .newsletter { grid-template-columns: 1fr; gap: 25px; }
}

@media (max-width: 560px) {
  .studio .wrap { width: calc(100% - 36px); }
  .studio-opening { padding-top: 29px; }
  .studio-intro { margin-bottom: 26px; }
  .studio-intro h1 { font-size: clamp(2.65rem, 13vw, 3.65rem); margin-top: 14px; }
  .studio-intro-copy > p { font-size: 1rem; }
  .studio-label { font-size: .75rem; }
  .studio-board { gap: 22px; }
  .specimen-label { font-size: .75rem; }
  .specimen-caption { grid-template-columns: 1fr; gap: 10px; margin-top: 15px; }
  .specimen-caption h2 { font-size: 1.5rem; }
  .board-secondary { grid-template-columns: 1fr; gap: 25px; }
  .board-printhead img { aspect-ratio: 2 / 1; }
  .studio-person { grid-template-columns: 86px 1fr; gap: 22px; padding-top: 20px; }
  .studio-person h2 { font-size: 1.9rem; }
  .studio-person p:not(.studio-label) { font-size: .9rem; }
  .studio-work { padding-block: 53px 40px; }
  .studio-section-heading { margin-bottom: 32px; }
  .studio-section-heading h2 { font-size: 2rem; }
  .studio-section-heading > div > p { font-size: .975rem; margin-top: 18px; }
  .studio-story { padding-block: 32px 41px; }
  .story-copy h3 { font-size: 2.1rem; }
  .studio-related { grid-template-columns: 1fr; padding-block: 27px; gap: 29px; }
  .studio-related article + article { border-top: 1px solid var(--rule); padding-top: 27px; }
  .studio-related h3 { font-size: 1.65rem; }
  .studio-writing { padding-block: 37px; }
  .writing-topics { grid-template-columns: 1fr; gap: 13px; padding-bottom: 27px; }
  .studio-article { grid-template-columns: 1fr; gap: 18px; padding-block: 24px; }
  .studio-article h3 { font-size: 1.65rem; }
  .writing-all { margin-left: 0; }
  .studio-coverage { padding-block: 43px; }
  .studio-coverage .coverage-row { grid-template-columns: 1fr 20px; gap: 10px 18px; }
  .studio-coverage .coverage-row > .metadata { grid-column: 1 / -1; }
  .studio-contact { padding-top: 32px; padding-bottom: 37px; }
  .studio .newsletter { padding: 23px; }
}

/* Interior pages share the same materials, typography, and accent as Home. */
.studio .eyebrow {
  color: var(--muted);
  font: 400 .75rem/1.7 var(--mono);
  letter-spacing: .065em;
}
.studio .page-heading { padding-block: 52px 42px; max-width: 960px; }
.studio .page-heading h1 {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-weight: 550;
  letter-spacing: -.05em;
  line-height: 1.08;
}
.studio .page-heading h1 em {
  color: var(--accent);
  font-family: var(--serif);
  font-weight: 400;
  letter-spacing: -.035em;
}
.studio .page-heading .lede { max-width: 43rem; }
.studio .article-page .page-heading { max-width: 50rem; }
.studio .article-page .page-heading h1 {
  font-family: var(--serif);
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: -.035em;
}
.studio .contact-block {
  background: #e9ece2;
  border-top: 1px solid #bdc4b6;
}
.studio .archive-nav { border-top-color: var(--ink); }
.studio .archive-year h2 { color: var(--accent); }
.studio .prose pre { border: 1px solid var(--rule); }
@media (max-width: 700px) {
  .studio .page-heading { padding-block: 37px 32px; }
}

/* Keep personal names and the PhD abbreviation in their proper case. */
.studio .credential-label { text-transform: none; letter-spacing: .035em; }

/* Three named projects with one clear, keyboard-accessible destination each. */
.studio-board.project-gallery {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 25px;
  align-items: stretch;
}
.project-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  text-decoration: none;
  color: var(--ink);
}
.project-card:hover { color: var(--ink); }
.project-card .specimen-label { gap: 3px 12px; flex-direction: column; align-items: flex-start; }
.project-card .specimen-label h2 {
  font: inherit;
  font-weight: 500;
  letter-spacing: inherit;
  line-height: inherit;
}
.project-card .project-photo img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.project-card-openlung .project-photo img {
  object-fit: contain;
  background: #e4e8e1;
}
.project-card-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding-top: 17px;
}
.project-card-content > p {
  color: var(--muted);
  font-size: .95rem;
  line-height: 1.7;
  margin-bottom: 18px;
}
.project-destination {
  display: inline-flex;
  align-items: baseline;
  align-self: flex-start;
  gap: 12px;
  margin-top: auto;
  padding-bottom: 3px;
  border-bottom: 1px solid currentColor;
  color: var(--accent);
  font-size: .875rem;
}
.project-destination > span { flex: none; }
.project-card:hover .project-destination { color: var(--ink); }
.project-card:focus-visible { outline-offset: 7px; }
.studio-person.studio-person-wide {
  grid-template-columns: 91px minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 25px;
  margin-top: 35px;
  padding-top: 26px;
}
.studio-person-wide .studio-person-bio { max-width: 35rem; }
.studio-person-wide h2 { margin-bottom: 0; }
.project-row, .project-row h3[id] { scroll-margin-top: 28px; }
.project-subheading { font-size: 1.55rem; margin-block: 23px 12px; }
.openlung-study img { background: #e4e8e1; }

@media (max-width: 1000px) {
  .project-card .specimen-label { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 800px) {
  .studio-person.studio-person-wide { grid-template-columns: 86px minmax(0, 1fr); gap: 15px 22px; }
  .studio-person-wide .portrait-small { grid-row: 1 / 3; }
  .studio-person-wide .studio-person-bio { grid-column: 2; }
}
@media (max-width: 700px) {
  .studio-board.project-gallery { grid-template-columns: 1fr; gap: 32px; }
  .project-card .specimen-label { flex-direction: column; align-items: flex-start; }
  .project-card .project-photo img { aspect-ratio: 16 / 10; }
  .project-card-content { padding-top: 14px; }
}
@media (max-width: 560px) {
  .studio-person.studio-person-wide { margin-top: 30px; }
  .studio-person-wide .portrait-small { grid-row: auto; }
  .studio-person-wide .studio-person-bio { grid-column: 1 / -1; }
}

/* Ghost editor output keeps copy editable while the theme owns its layout. */
body.studio{font-family:var(--gh-font-body,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif)}
.studio h1,.studio h2,.studio h3{font-family:var(--gh-font-heading,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif)}
.studio em{font-family:Georgia,'Times New Roman',serif}
.preview-bar a{margin-left:1rem;text-underline-offset:.2em}
.studio-intro>div:first-child>p:first-child,.studio-person-intro>p:first-child,.story-copy>p:first-child,.studio-related article>p:first-child,.page-heading>p:first-child,.project-row>div>p:first-child,.publication-item>p:first-child{font-family:var(--mono);font-size:.7rem;line-height:1.6;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.studio-person-intro h2{margin-top:8px}.studio-intro-copy a,.studio-person-bio a,.studio-related a,.project-row a,.prose a,.publication-item>p>a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent);font-size:.9rem;font-weight:500;display:inline-block;margin-top:.8rem}
.story-copy>h3{margin-block:16px 24px}.story-copy>p:not(:first-child){margin-bottom:1rem}.image-note p{font-size:inherit;line-height:inherit;color:inherit}
.studio-article>div>p>a{font-weight:500;color:var(--accent);text-decoration:none}.coverage-copy h3{margin:0}.project-card-content>p{margin:0}
.signup-fields input{background:#fff;color:var(--ink)}.signup-fields button,.private-form button{background:var(--accent);color:#fff;cursor:pointer}.button-loading,.signup-success,.signup-error{display:none}.signup-form.loading .button-label{display:none}.signup-form.loading .button-loading{display:inline}.signup-form.success .signup-success{display:block;color:#356245}.signup-form.error .signup-error{display:block;color:#9c2e25}.signup-note,.signup-success,.signup-error{font-size:.78rem;margin-top:12px}.signup-form label{font-size:.85rem;display:block;margin-bottom:8px}
.archive-copy{display:grid;grid-template-columns:110px minmax(0,1fr);column-gap:30px}.archive-copy>h2,.archive-copy>ul{border-top:1px solid var(--rule);padding-top:30px;margin-top:30px}.archive-copy>ul{list-style:none;padding-left:0}.archive-copy li{padding:18px 0;border-bottom:1px solid var(--rule)}.archive-copy li:first-child{padding-top:0}.archive-copy li:last-child{border:0}.archive-copy li a{font-size:1.15rem;line-height:1.4;text-decoration:none}.archive-copy li p{font-size:.85rem;color:var(--muted);margin-top:8px}.archive-copy li h3{font-size:1.2rem;margin-bottom:8px}.archive-copy ul li{overflow-wrap:anywhere}
.publication-item p{margin-top:12px}.publication-item p:first-child{margin-top:0}.publication-item h3 a{text-decoration:none;color:inherit}.archive-note p{font-size:inherit}.gh-content>:not(:first-child){margin-top:1.2rem}.gh-content img{max-width:100%;height:auto}.gh-content h2,.gh-content h3{margin-top:2rem}.gh-content figcaption{font-size:.85rem;color:var(--muted);text-align:center}.gh-content pre{overflow:auto;background:var(--wash);padding:1.2rem}.gh-content blockquote{border-left:2px solid var(--accent);padding-left:1.4rem}.article-feature{margin-bottom:2rem}.article-feature img{width:100%;height:auto}.membership-cta{background:var(--wash);padding:2rem;margin-block:2rem}.membership-cta a{display:inline-block;margin:1rem 1rem 0 0}.private-form{display:flex;flex-wrap:wrap;gap:1rem}.private-form input,.private-form button{padding:.8rem 1rem;border:1px solid var(--rule)}.private-form button{border:0}
.kg-width-wide{width:min(100%,960px)}.kg-width-full{width:100%}.kg-image-card,.kg-gallery-card{margin:1.5rem 0}.kg-gallery-container{display:flex;flex-direction:column;gap:12px}.kg-gallery-row{display:flex;gap:12px}.kg-gallery-image{flex:1}.kg-gallery-image img{width:100%;height:auto}.kg-bookmark-card a{text-decoration:none}.kg-bookmark-container{display:flex;border:1px solid var(--rule);padding:1rem}.kg-bookmark-content{flex:1;min-width:0}.kg-bookmark-title{font-weight:600}.kg-bookmark-description,.kg-bookmark-metadata{font-size:.85rem;color:var(--muted)}.kg-bookmark-thumbnail{max-width:35%;margin-left:1rem}.kg-bookmark-icon{width:20px;height:20px;display:inline-block}.kg-callout-card{padding:1.5rem;background:var(--wash)}.kg-toggle-card{border:1px solid var(--rule);padding:1rem}.kg-button-card{text-align:center}.kg-btn{display:inline-block;padding:.7rem 1rem;background:var(--accent);color:white}.pagination{display:flex;justify-content:space-between;gap:1rem;padding:2rem 0}
@media(max-width:700px){.archive-copy{display:block}.archive-copy>ul{border-top:0;margin-top:0;padding-top:20px}.preview-bar a{display:none}.kg-gallery-row{flex-wrap:wrap}.kg-bookmark-container{display:block}.kg-bookmark-thumbnail{max-width:100%;margin:1rem 0 0}.studio-intro-copy a{margin-top:1rem}}
.page-copy>p:first-child,.project-copy>p:first-child,.publication-copy>p:first-child,.publication-intro>p:first-child,.contact-copy>p:first-child,.aside-note>p:first-child{font-family:var(--mono);font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.page-copy>p:last-child:not(:first-child){font-size:1.2rem;color:var(--muted)}.project-copy>p:last-child a{margin-right:1rem}.publication-copy h3+p{font-size:.85rem;color:var(--muted)}.archive-copy li>strong{display:inline-block;font-weight:400;font-size:1.2rem;line-height:1.4;margin-bottom:6px}.archive-copy li{font-size:.85rem;color:var(--muted)}.archive-copy li>strong a{color:var(--ink)}.contact-copy>p>a{display:inline-block;margin-right:1.2rem}.contact-copy a[href^="mailto"]{font-family:var(--serif);font-size:1.8rem;color:var(--accent)}
/* Review round: clearer writing feature, quiet editorial symbols, private contact. */
.featured-writing{grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:start;padding-block:32px}.writing-thumbnail{margin:0 0 18px;aspect-ratio:4/3;overflow:hidden;background:var(--wash)}.writing-thumbnail img{width:100%;height:100%;object-fit:cover}.featured-writing .metadata{font-size:.8rem}.featured-writing>div:last-child{padding-top:3px}.studio-writing .studio-section-heading{margin-bottom:32px}
.studio-coverage .coverage-row{grid-template-columns:58px 190px minmax(0,1fr) 20px;gap:24px;align-items:start}.coverage-symbol{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--rule);color:var(--accent);background:#f0efe7}.coverage-symbol svg{width:28px;height:28px}.studio-coverage .coverage-row>.metadata{padding-top:4px}.coverage-row .row-arrow{padding-top:4px}
.studio-contact.contact-with-form{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px 64px;align-items:start}.contact-with-form>.studio-label{grid-column:1/-1}.contact-with-form>.contact-introduction{padding-top:3px}.contact-with-form>.contact-form{grid-column:2;grid-row:2}.studio-contact.contact-with-form h2{font-size:clamp(2rem,3.2vw,2.8rem)}
.contact-form{min-width:0;display:grid;gap:20px}.contact-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:block;margin-bottom:7px;font-family:var(--mono);font-size:.72rem;letter-spacing:.025em;color:var(--muted)}.contact-form input,.contact-form textarea{display:block;width:100%;min-width:0;padding:12px 13px;border:1px solid #c9cbbf;border-radius:0;background:#fffefa;color:var(--ink);font:inherit;font-size:1rem;line-height:1.5}.contact-form textarea{resize:vertical;min-height:130px}.contact-form button{justify-self:start;display:inline-flex;gap:35px;align-items:center;background:var(--accent);color:var(--paper);border:1px solid var(--accent);padding:12px 19px;font:inherit;font-size:.9rem;cursor:pointer}.contact-form button:hover{background:#743625}.contact-form button:disabled{opacity:.55;cursor:not-allowed}.contact-form .contact-form-note,.contact-form .contact-form-status{font-size:.78rem!important;line-height:1.5;margin:0!important;max-width:none!important}.contact-form-status{padding:12px 14px;border-left:2px solid var(--accent);background:var(--wash)}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-page{max-width:920px}.contact-page .contact-form{max-width:700px}.contact-copy a[href="/contact/"]{font-family:var(--serif);font-size:1.7rem;color:var(--accent)}
@media(max-width:900px){.featured-writing{grid-template-columns:220px minmax(0,1fr);gap:28px}.studio-coverage .coverage-row{grid-template-columns:48px 150px minmax(0,1fr) 16px;gap:18px}.studio-contact.contact-with-form{gap:24px 35px}}
@media(max-width:700px){.featured-writing{grid-template-columns:1fr;gap:24px}.writing-thumbnail{max-width:100%;aspect-ratio:16/9}.studio-coverage .coverage-row{grid-template-columns:42px minmax(0,1fr) 16px;gap:10px 15px}.coverage-symbol{width:38px;height:38px;grid-column:1;grid-row:1/3}.coverage-symbol svg{width:23px;height:23px}.studio-coverage .coverage-row>.metadata{grid-column:2;grid-row:1;padding-top:0}.studio-coverage .coverage-row>div:not(.coverage-symbol){grid-column:2;grid-row:2}.studio-coverage .coverage-row>.row-arrow{grid-column:3;grid-row:1}.studio-contact.contact-with-form{grid-template-columns:1fr;gap:22px}.contact-with-form>.contact-form{grid-column:1;grid-row:auto}.contact-with-form>.contact-introduction{padding-top:0}.contact-field-pair{grid-template-columns:1fr;gap:18px}.contact-form{gap:18px}.studio-contact.contact-with-form .contact-form p{margin-top:0}.contact-form button{min-height:46px}}

/* Review round 2: product families, research themes, and source-backed visuals. */
.project-row .project-copy h2+p{margin-top:18px;font-size:.95rem;color:var(--accent);line-height:1.65}
.project-row .project-copy h3{font-size:1.48rem;line-height:1.3;letter-spacing:-.015em;margin:28px 0 11px;padding-top:23px;border-top:1px solid var(--rule)}
.project-row .project-copy h3+p{margin-top:0}
.research-themes{padding:26px 28px;background:var(--wash);border:1px solid var(--rule);border-left:2px solid var(--accent)}
.research-themes ul{list-style:none;padding:0;margin:26px 0;display:grid;gap:22px}.research-themes li{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:17px;font-size:1.1rem;line-height:1.45;color:var(--ink)}
.research-themes li::before{content:"";display:block;width:40px;height:40px;background:center/contain no-repeat}
.research-themes li:nth-child(1)::before{background-image:url('../icons/research-fibers.svg')}.research-themes li:nth-child(2)::before{background-image:url('../icons/research-layers.svg')}.research-themes li:nth-child(3)::before{background-image:url('../icons/research-composite.svg')}
.research-themes>p:last-child{font-size:.9rem;line-height:1.65}
.publication-item.with-visual{display:grid;grid-template-columns:230px minmax(0,1fr);gap:36px;align-items:start;padding:32px 0;margin:0;border-bottom:1px solid var(--rule)}
.publication-item.with-visual:last-child{border-bottom:0}.publication-body{min-width:0}.publication-body h3{font-size:1.6rem;line-height:1.3;margin:9px 0 15px}.publication-body p{margin-top:12px;line-height:1.65}.publication-body>p:first-child{margin-top:0}.publication-body>a{display:inline-block;margin-top:16px;color:var(--accent);font-size:.88rem;text-decoration-thickness:1px}
.publication-image-link{display:grid;place-items:center;background:var(--wash);overflow:hidden;border:1px solid var(--rule);height:190px}.publication-image-link img{width:100%;height:190px;object-fit:cover}
.publication-media.document .publication-image-link{height:245px;background:#f0efe8}.publication-media.document img{height:225px;width:100%;object-fit:contain;padding:4px}
.publication-media.patent .publication-image-link{height:210px;background:#fff}.publication-media.patent img{height:210px;object-fit:contain;padding:12px}.publication-media.rotated img{transform:rotate(-90deg);padding:10px}
.publication-media figcaption{font-family:var(--mono);font-size:.62rem;line-height:1.5;letter-spacing:.01em;color:var(--muted);margin-top:9px}.publication-media figcaption a{text-decoration:none}.publication-media figcaption a:hover{text-decoration:underline}
.publication-reference{height:225px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--wash);border:1px solid var(--rule);text-decoration:none;color:var(--muted);font: .72rem var(--mono)}.publication-reference strong{font:2rem Georgia,serif;color:var(--ink);font-weight:400}.reference-icon{display:block;color:var(--accent);width:48px;height:48px;margin-bottom:8px}.reference-icon svg{width:100%;height:100%}
@media(max-width:900px){.publication-item.with-visual{grid-template-columns:190px minmax(0,1fr);gap:28px}.publication-body h3{font-size:1.45rem}}
@media(max-width:700px){.publication-item.with-visual{grid-template-columns:1fr;gap:23px;padding:30px 0}.publication-media{max-width:420px}.publication-media.document,.publication-media.reference{max-width:210px}.publication-media.patent{max-width:310px}.publication-image-link,.publication-image-link img{height:205px}.publication-body h3{font-size:1.4rem}.research-themes{padding:23px}.research-themes li{gap:13px;font-size:1.02rem}}

/* Short, native editorial summaries beneath preserved archive metadata. */
.archive-copy li>em{display:block;font:normal .92rem/1.65 var(--gh-font-body,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif);color:var(--ink);margin-top:10px;max-width:58rem}.signup-preview-status{font-size:.8rem;line-height:1.5;padding:12px 14px;border-left:2px solid var(--accent);background:var(--wash);margin-top:12px}.signup-preview-status[hidden]{display:none}

.archive-copy li>a{display:inline-block;font-size:.8rem;color:var(--accent);margin-top:7px;text-decoration:underline;text-underline-offset:.2em}

/* Final editorial refinement: clear title hierarchy and direct opening actions. */
.project-row h3 a{
  display:inline;
  margin:0;
  border:0;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
  text-decoration:underline;
  text-decoration-color:var(--rule);
  text-decoration-thickness:1px;
  text-underline-offset:.16em;
}
.project-row h3 a:hover,.project-row h3 a:focus-visible{
  color:var(--accent);
  text-decoration-color:currentColor;
}
.archive-copy li>a:first-child{
  margin:0 0 .4rem;
  color:var(--ink);
  font-size:1.15rem;
  font-weight:400;
  line-height:1.4;
  text-decoration-color:var(--rule);
}
.archive-copy li>a:first-child>strong{font-weight:inherit}
.archive-copy li>a:first-child:hover,.archive-copy li>a:first-child:focus-visible{
  color:var(--accent);
  text-decoration-color:currentColor;
}
.studio-intro-copy>p:last-child{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:12px 28px;
  margin-top:20px;
}
.studio-intro-copy>p:last-child>a{margin-top:0}
.studio-work>.studio-section-heading>div:only-child,
.studio-writing .studio-section-heading>div:only-child{grid-column:2}
@media(max-width:800px){
  .studio-work>.studio-section-heading>div:only-child,
  .studio-writing .studio-section-heading>div:only-child{grid-column:1}
}
@media(max-width:700px){
  .archive-copy li>a:first-child{font-size:1.05rem}
}

/* Separate a linked article heading from its summary on Writing. */
.content-section .project-row h3{margin-bottom:12px}

/* Work organization marks: original artwork and native accessible headings. */
.project-organization-logo{height:88px;display:flex;align-items:center;justify-content:flex-start;margin:0 0 20px;max-width:100%}
.project-organization-logo img{display:block;max-width:100%;object-fit:contain;height:auto}
.logo-tangho img{width:260px}
.logo-structur3d img{width:270px}
.logo-waterloo img{width:340px}
.project-copy>p:first-of-type{font-family:var(--mono);font-size:.7rem;line-height:1.6;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
/* Keep native copy editable: CSS places the number, brand, role and company in order. */
.logo-replaces-heading{display:grid;grid-template-columns:minmax(0,1fr)}
.logo-replaces-heading>.project-organization-logo{grid-row:2;height:auto;margin:18px 0 4px}
.logo-replaces-heading>p:first-of-type{grid-row:1}
.logo-replaces-heading>h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* OpenLung keeps its visible title, with a small original inverse mark beside it. */
.logo-beside-heading{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:14px}
.logo-beside-heading>*{grid-column:1/-1}
.logo-beside-heading>p:first-of-type{grid-row:1}
.logo-beside-heading>.logo-openlung{grid-column:1;grid-row:2;height:auto;margin:12px 0 22px;align-self:center}
.logo-beside-heading>h2{grid-column:2;grid-row:2;align-self:center}
.logo-openlung img{width:52px;height:44px;padding:7px;background:#283b3d;object-fit:contain}
@media(max-width:700px){.project-organization-logo{margin-bottom:16px}.logo-replaces-heading>.project-organization-logo{margin:16px 0 2px}}

/* Compact, nonmodal opt-in notice; both choices remain equally visible and accessible. */
.analytics-preferences[hidden],.analytics-preferences-link[hidden]{display:none}
.analytics-preferences{position:fixed;z-index:1000;left:auto;right:24px;bottom:24px;width:380px;max-width:calc(100% - 48px);margin:0;padding:20px;display:grid;gap:15px;background:var(--paper,#f8f7f2);border:1px solid var(--rule,#c9cbbf);box-shadow:0 6px 24px #1723271f;color:var(--ink)}
.analytics-preferences h2{font-size:1rem;line-height:1.3;margin:0 0 8px;letter-spacing:0}
.analytics-preferences p{font-size:.84rem;line-height:1.5;margin:0}.analytics-preferences a{color:var(--accent);text-underline-offset:.15em}
.analytics-actions{display:flex;flex-wrap:wrap;gap:8px}.analytics-actions button{font:inherit;font-size:.82rem;min-height:44px;padding:9px 10px;border:1px solid var(--accent);background:var(--paper,#f8f7f2);color:var(--accent);cursor:pointer;flex:1;white-space:normal}.analytics-actions button:hover{background:var(--wash)}
.analytics-actions button[data-analytics-accept]{background:var(--accent);color:#fff}.analytics-actions button[data-analytics-accept]:hover{background:#743625}
.analytics-preferences-link{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.signup-form button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:500px){.analytics-preferences{right:12px;bottom:12px;width:380px;max-width:calc(100% - 24px);padding:16px;gap:12px;max-height:calc(100dvh - 24px);overflow:auto}}
