/* Local editorial preview. Loaded only on the archive, about and case pages. */
.records-main,.about-main,.detail-main { --editorial-surface:#191a20; }
.case-stage { color:var(--accent); font-size:13px; line-height:1.7; margin-top:18px; }
.case-image-note { color:var(--muted); font-size:13px; line-height:1.7; margin:0 0 10px; }
.detail-image-trigger { display:block; cursor:zoom-in; }
.detail-image-visual { display:block; }
.detail-image-trigger:focus-visible { outline:3px solid var(--accent); outline-offset:5px; }
.case-example { border-top:1px solid var(--line); margin-top:28px; padding-top:24px; }
.case-example h3 { font-size:22px; line-height:1.5; }
.case-example table { width:100%; table-layout:fixed; border-collapse:collapse; margin:24px 0; font-size:15px; line-height:1.7; overflow-wrap:anywhere; }
.case-example th,.case-example td { border-bottom:1px solid var(--line); padding:14px 12px; text-align:left; vertical-align:top; }
.case-example thead th { color:var(--accent); font-size:13px; font-weight:500; }
.case-example tbody th { font-weight:500; }
.detail-main .case-example .case-example-note { font-size:14px; color:var(--muted); }
@media(max-width:650px) {
 .case-example th,.case-example td { padding:12px 6px; font-size:14px; }
 .case-example thead th { font-size:12px; }
}
.editorial-eyebrow,.records-heading .editorial-eyebrow {
  font-size:12px; letter-spacing:.12em; line-height:1.5; color:var(--accent);
  margin:0 0 20px; font-weight:500;
}
.records-heading { padding:20px 0 12px; margin-bottom:32px; }
.records-heading h1 { font-size:clamp(48px,7vw,100px); letter-spacing:-.04em; }
.records-heading>p:last-child { font-size:clamp(18px,1.6vw,24px); max-width:760px; }
.records-main .archive-tools { padding-block:24px; }
.records-main .archive-list a {
  grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr) 24px;
  gap:28px; padding:24px 0; transition:background-color .2s ease;
}
.records-main .archive-list { position:relative; overflow:clip; }
.records-main .archive-list li { scroll-margin-top:40px; }
.records-main .archive-list a:hover,.records-main .archive-list a:focus-visible,
.records-main .archive-returned a { background:rgba(150,152,255,.045); }
.records-main .archive-name { position:relative; width:fit-content; transition:color .18s ease,transform .24s ease; }
.records-main .archive-name::after { content:""; position:absolute; left:0; bottom:-5px; width:100%; height:1px;
  background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .3s cubic-bezier(.2,.7,.2,1); }
.records-main .archive-list a:hover .archive-name,.records-main .archive-list a:focus-visible .archive-name { transform:translateX(4px); }
.records-main .archive-list a:hover .archive-name::after,.records-main .archive-list a:focus-visible .archive-name::after { transform:scaleX(1); }
.archive-title-group { display:block; min-width:0; }
.archive-meta { display:flex; gap:14px; color:var(--muted); font-size:12px; letter-spacing:.04em; margin-bottom:9px; }
.archive-meta>span { color:var(--accent); letter-spacing:0; }
.records-main .archive-name { display:block; font-size:20px; letter-spacing:0; }
.records-main .archive-summary { font-size:15px; line-height:1.8; }
.archive-arrow { color:var(--muted); transition:transform .25s ease,color .25s ease; }
.archive-list a:hover .archive-arrow,.archive-list a:focus-visible .archive-arrow { color:var(--accent); transform:translate(3px,-3px); }
.archive-list a:focus-visible { outline-offset:6px; }
.about-main .about-opening { padding-bottom:54px; border-bottom:0; }
.about-main .experience-section { display:block; padding-block:40px 42px; }
.experience-heading { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:48px; align-items:start; }
.experience-heading>p { font-size:17px; line-height:1.9; color:var(--muted); max-width:720px; }
.experience-heading h2 { font-size:clamp(30px,3.3vw,44px); }
.participation-modes { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin:32px 0 24px; }
.participation-modes>div { border-top:1px solid var(--line); padding-top:22px; }
.mode-heading { display:flex; gap:18px; align-items:baseline; margin-bottom:14px; }
.mode-heading>span { font-size:13px; color:var(--accent); font-variant-numeric:tabular-nums; letter-spacing:.08em; }
.participation-modes h2 { font-size:24px; color:var(--ink); margin:0; }
.participation-modes p { font-size:16px; line-height:1.85; color:var(--muted); }
.role-scope { display:flex; flex-wrap:wrap; list-style:none; padding:0; margin:20px 0 0; gap:10px 22px; }
.role-scope li { font-size:13px; color:var(--accent); }
.experience-project-link { margin-top:4px; }
.about-main .fde-method { padding-block:50px; }
.about-main .fde-principles>div { padding-top:18px; }
.about-main .fde-cycle { counter-reset:editorial-step; }
.about-main .fde-cycle>li { border-top:1px solid var(--line); padding-top:20px; }
.about-main .fde-cycle h4::before { color:var(--accent); }
.editorial-title-mask { overflow:clip; }
.editorial-title-content { display:block; }
/* One scroll narrative: the existing six steps, with a stable reading rail. */
.workflow-story { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:60px; margin-top:54px; align-items:start; }
.workflow-intro h3 { font-size:clamp(27px,2.7vw,38px); line-height:1.45; max-width:340px; margin:0; }
.workflow-progress { display:none; height:2px; width:160px; max-width:100%; background:var(--line); margin-top:30px; overflow:hidden; }
.workflow-progress>span { display:block; width:100%; height:100%; background:var(--accent); transform:scaleX(0); transform-origin:left; }
.workflow-position { display:none; color:var(--muted); font-size:12px; font-variant-numeric:tabular-nums; letter-spacing:.08em; margin-top:16px; }
.workflow-position>span { color:var(--accent); }
.workflow-enhanced .workflow-intro { position:sticky; top:clamp(40px,12vh,120px); }
.workflow-enhanced .workflow-progress,.workflow-enhanced .workflow-position { display:block; }
.about-main .workflow-story .fde-cycle { display:block; margin:0; }
.about-main .workflow-story .fde-cycle>li { min-height:125px; padding:22px 20px 26px;
  border-top:1px solid var(--line); transition:background-color .35s ease; }
.about-main .workflow-story .fde-cycle h4 { font-size:23px; line-height:1.5; margin-bottom:14px; transition:color .3s ease,transform .35s ease; }
.about-main .workflow-story .fde-cycle h4::before { margin-right:20px; }
.about-main .workflow-story .fde-cycle p { font-size:16px; line-height:1.85; max-width:560px; }
.about-main .workflow-story .fde-cycle>.workflow-active { background:rgba(150,152,255,.055); }
.about-main .workflow-story .fde-cycle>.workflow-active h4 { color:var(--accent); transform:translateX(8px); }
.case-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,5vw,70px); align-items:center; padding:30px 0 42px; }
.case-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 28px; font-size:13px; }
.case-breadcrumb>span { color:var(--muted); }
.case-breadcrumb .back { display:inline-flex; align-items:center; min-height:44px; }
.case-hero:has(.detail-header:only-child) { grid-template-columns:minmax(0,1fr); max-width:1050px; }
.case-hero .detail-header { margin:0; }
.case-hero .detail-header h1 { font-size:clamp(34px,3.6vw,56px); line-height:1.3; letter-spacing:-.02em; view-transition-name:project-title; }
.case-hero .detail-intro { font-size:17px; line-height:1.9; margin-top:24px; color:var(--muted); }
.case-hero .detail-image,.case-hero .detail-image.p36 { margin:0; width:100%; max-width:none; min-width:0; }
.case-hero .detail-image img { max-height:500px; background:var(--editorial-surface); border:1px solid var(--line); border-radius:8px; }
.case-hero .detail-image.p36 img { max-height:490px; }
.case-hero .detail-image figcaption { font-size:13px; margin-top:12px; }
.case-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; border-block:1px solid var(--line); padding:26px 0; margin:0 0 50px; }
.case-facts dt { font-size:12px; color:var(--accent); margin-bottom:12px; }
.case-facts dd { margin:0; font-size:16px; line-height:1.9; max-width:650px; }
.detail-main .detail-grid { grid-template-columns:220px minmax(0,1fr); gap:clamp(30px,5vw,80px); }
.detail-main .detail-grid aside { top:24px; }
.detail-main .case-index { counter-reset:case-section; gap:8px; }
.case-index a::before { counter-increment:case-section; content:counter(case-section,decimal-leading-zero); margin-right:15px; color:var(--muted); font-size:11px; font-variant-numeric:tabular-nums; }
.case-index a[aria-current="location"] { color:var(--accent); }
.detail-main .detail-content section { padding-block:28px 42px; scroll-margin-top:30px; }
.detail-main .detail-content section h2 { font-size:27px; line-height:1.4; }
.detail-main .detail-content p { font-size:17px; line-height:1.95; max-width:820px; }
@media(max-width:1050px) {
 .records-main .archive-list a { grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 20px; gap:24px; }
 .records-main .archive-summary { grid-column:2; }
 .records-main .archive-title-group { grid-column:1; grid-row:1; }
 .records-main .archive-list a>.archive-arrow { grid-column:3; grid-row:1; }
 .case-hero { grid-template-columns:1fr; gap:30px; }
 .case-hero .detail-image { max-width:900px; }
 .case-hero .detail-image.p36 { max-width:420px; margin-inline:auto; }
}
@media(max-width:650px) {
 .records-heading { padding-top:8px; margin-bottom:26px; }
 .records-heading h1 { font-size:46px; }
 .records-heading .editorial-eyebrow { font-size:11px; margin-bottom:14px; }
 .records-main .archive-list a { grid-template-columns:minmax(0,1fr) 18px; gap:12px 16px; padding-block:22px; }
 .records-main .archive-list a>.archive-arrow { grid-column:2; grid-row:1; }
 .records-main .archive-name { font-size:18px; line-height:1.5; }
 .archive-meta { flex-wrap:wrap; gap:5px 10px; margin-bottom:7px; }
 .records-main .archive-summary { font-size:16px; grid-column:1 / -1; }
 .experience-heading { grid-template-columns:1fr; gap:18px; }
 .experience-heading>p { font-size:16px; }
 .about-main .experience-section { padding-block:30px; }
 .participation-modes { grid-template-columns:1fr; gap:20px; }
 .about-main .about-opening { padding-bottom:32px; }
 .about-main .fde-method { padding-block:34px; }
 .workflow-story { grid-template-columns:1fr; gap:26px; margin-top:36px; }
 .workflow-enhanced .workflow-intro { position:static; }
 .workflow-intro h3 { font-size:27px; max-width:none; }
 .workflow-position { display:none!important; }
 .workflow-enhanced .workflow-progress { margin-top:18px; width:100%; }
 .about-main .workflow-story .fde-cycle>li { min-height:0; padding:24px 12px; }
 .about-main .workflow-story .fde-cycle h4 { font-size:21px; }
 .case-hero { padding-top:24px; padding-bottom:28px; }
 .case-hero .detail-header h1 { font-size:32px; }
 .case-hero .detail-intro { font-size:16px; margin-top:20px; }
 .case-facts { grid-template-columns:1fr; gap:24px; margin-bottom:32px; }
 .detail-main .detail-grid { grid-template-columns:1fr; gap:24px; }
 .detail-main .detail-grid aside { position:static; min-width:0; }
 .detail-main .case-index { flex-direction:row; flex-wrap:nowrap; overflow-x:auto; max-width:100%; min-width:0; gap:20px; padding-bottom:6px; }
 .case-index a { flex-shrink:0; font-size:13px; }
 .case-index a::before { margin-right:8px; }
 .detail-main .detail-content p { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) {
 .archive-arrow { transition:none; }
 .archive-list a:hover .archive-arrow { transform:none; }
 .records-main .archive-name,.records-main .archive-name::after,.workflow-story .fde-cycle>li,.workflow-story .fde-cycle h4 { transition:none!important; }
 .records-main .archive-list a:hover .archive-name,.records-main .archive-list a:focus-visible .archive-name { transform:none; }
}
@media(prefers-reduced-motion:no-preference) {
 @view-transition { navigation:auto; }
 /* Only the shared title needs a snapshot. Keep the live page interactive
    while it moves, including an immediate return or screenshot click. */
 :root { view-transition-name:none; }
 ::view-transition,::view-transition-group(*),::view-transition-image-pair(*),::view-transition-old(*),::view-transition-new(*) { pointer-events:none; }
 ::view-transition-old(root),::view-transition-new(root) { animation:none; }
 ::view-transition-group(project-title) { animation-duration:.55s; animation-timing-function:cubic-bezier(.22,.7,.2,1); }
 ::view-transition-old(project-title) { animation-duration:.18s; }
 ::view-transition-new(project-title) { animation-duration:.3s; }
}
@media print {
 .workflow-intro { position:static!important; }
 .workflow-progress,.workflow-position { display:none!important; }
}

/* Editorial refinement: stronger type, a travelling selection surface, clear reading states. */
.records-heading { padding-block:32px 36px; margin-bottom:0; }
.records-heading h1 { font-size:clamp(52px,7.4vw,96px); color:var(--accent); line-height:1.15; text-wrap:balance; }
.records-heading>p:last-child { margin-top:24px; font-size:20px; }
.records-main .archive-tools { border-top:1px solid var(--line); padding-block:30px; gap:28px; }
.records-main .filters { flex:1 1 auto; flex-wrap:nowrap; overflow-x:auto; max-width:100%; min-width:0; scrollbar-width:thin; scrollbar-color:var(--line) transparent; padding-block:3px 8px; }
.records-main .filters button { flex-shrink:0; white-space:nowrap; transition:color .16s ease,border-color .16s ease,background-color .16s ease; }
.records-main .search-field input { background:transparent; border-radius:0; border-width:0 0 1px; padding-inline:0; caret-color:var(--accent); transition:border-color .18s ease; }
.records-main .search-field input:focus-visible { border-color:var(--accent); outline:2px solid var(--accent); outline-offset:6px; }
.records-main .result-count { margin-bottom:20px; font-variant-numeric:tabular-nums; }
.records-main .archive-list a { padding:30px 16px; gap:36px; position:relative; z-index:1; }
.records-main .archive-name { font-size:clamp(20px,1.8vw,26px); line-height:1.45; text-wrap:balance; }
.records-main .archive-summary { max-width:65ch; align-self:center; }
.archive-meta { margin-bottom:12px; }
.archive-follow { position:absolute; inset:0 0 auto; height:1px; background:#20212d; pointer-events:none; opacity:0; transform-origin:top; z-index:0; }
.archive-surface { position:relative; overflow:clip; }
.archive-surface .archive-list { z-index:1; }
.records-main .archive-surface .archive-list a:hover { background:transparent; }
.records-main .archive-list a:hover .archive-name,.records-main .archive-list a:focus-visible .archive-name { color:var(--accent); transform:translateX(8px); }
.records-main .archive-list a:hover .archive-arrow,.records-main .archive-list a:focus-visible .archive-arrow { transform:translate(3px,-3px) rotate(45deg); }
.about-main .about-opening h1 { font-size:clamp(58px,8vw,96px); line-height:1.15; letter-spacing:-.04em; text-wrap:balance; }
.about-main .about-opening-intro { margin-top:28px; max-width:900px; font-size:clamp(23px,2.8vw,38px); line-height:1.55; }
.participation-modes { gap:64px; margin-top:12px; }
.participation-modes h2 { font-size:30px; }
.participation-modes>div { padding-block:30px 12px; }
.about-main .fde-method { padding-block:48px; }
.about-main .fde-method-heading { gap:40px 64px; }
.about-main .fde-method-heading h2 { font-size:clamp(38px,4.8vw,64px); line-height:1.25; text-wrap:balance; }
.about-main .fde-lead { margin-block:18px 44px; font-size:19px; max-width:72ch; }
.about-main .fde-principles { gap:36px; }
.about-main .fde-principles dt { font-size:21px; color:var(--accent); }
.about-main .fde-principles dd { font-size:16px; }
.about-main .workflow-story { margin-top:36px; }
.about-main .workflow-story .fde-cycle>li { padding-block:22px 26px; }
.about-main .workflow-story .fde-cycle>.workflow-active { background:#20212d; }
.case-hero { padding-block:44px 60px; }
.case-hero .detail-header h1 { font-size:clamp(38px,4.3vw,64px); text-wrap:balance; }
.case-hero .detail-image img { border-radius:0; }
.case-facts { padding-block:32px; gap:64px; }
.case-facts dt { font-size:14px; }
.detail-main .detail-content section h2 { font-size:32px; margin-bottom:22px; text-wrap:balance; }
.detail-main .detail-content p { max-width:70ch; }
.case-index a { position:relative; padding-block:10px; transition:color .18s ease; }
.case-index a::after { content:''; position:absolute; left:0; bottom:2px; width:100%; height:1px; background:var(--accent); transform:scaleX(0); transform-origin:left; transition:transform .24s ease; }
.case-index a[aria-current="location"]::after { transform:scaleX(1); }
@media(max-width:850px) { .about-main .fde-principles { grid-template-columns:1fr 1fr; } }
@media(max-width:650px) {
 .records-heading { padding-block:16px 28px; }
 .records-heading h1 { font-size:48px; }
 .records-heading>p:last-child { font-size:18px; margin-top:18px; }
 .records-main .archive-tools { gap:20px; padding-block:24px; }
 .records-main .archive-list a { padding:26px 0; gap:14px; }
 .records-main .archive-name { font-size:22px; }
 .records-main .archive-list a:hover .archive-name { transform:none; }
 .archive-follow { display:none; }
 .about-main .about-opening h1 { font-size:58px; }
 .participation-modes { gap:24px; }
 .participation-modes h2 { font-size:26px; }
 .about-main .fde-method { padding-block:44px; }
 .about-main .fde-lead { font-size:17px; }
 .about-main .fde-principles { grid-template-columns:1fr; gap:28px; }
 .about-main .workflow-story { margin-top:44px; }
 .case-hero { padding-block:26px 34px; }
 .case-hero .detail-header h1 { font-size:34px; }
 .case-facts { gap:26px; padding-block:26px; }
 .detail-main .detail-content section h2 { font-size:27px; }
 .case-index a { padding-block:12px; }
}
@media(prefers-reduced-motion:reduce) { .archive-follow { display:none; } .case-index a::after { transition:none; } }

/* Interaction is the focal experience: a deliberate sweep and a travelling selection. */
.archive-follow { background:#29283d; border-block:1px solid #676694; }
.records-main .archive-list a:hover .archive-name,.records-main .archive-list a:focus-visible .archive-name { transform:translateX(14px); }
.archive-arrow { display:grid; place-items:center; width:32px; height:32px; border:1px solid var(--line); border-radius:50%; font-size:20px; transition:transform .32s cubic-bezier(.16,1,.3,1),color .18s,background-color .18s,border-color .18s; }
.records-main .archive-list a { grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr) 32px; }
.records-main .archive-list a:hover .archive-arrow,.records-main .archive-list a:focus-visible .archive-arrow { background:var(--accent); color:#111214; border-color:var(--accent); transform:rotate(45deg); }
@media(max-width:650px) {
 .records-main .archive-list a { grid-template-columns:minmax(0,1fr) 32px; }
 .records-main .archive-list a:hover .archive-name { transform:none; }
}
@media(prefers-reduced-motion:reduce) {
 .records-main .archive-list a:hover .archive-name,.records-main .archive-list a:focus-visible .archive-name,
 .records-main .archive-list a:hover .archive-arrow,.records-main .archive-list a:focus-visible .archive-arrow { transform:none; }
 .archive-arrow { transition:color .15s,background-color .15s; }
}

.contact-introduction .contact-invitation { color:var(--accent); font-size:clamp(22px,2vw,28px); line-height:1.55; margin:26px 0 12px; max-width:22em; text-wrap:balance; }
.contact-introduction .contact-note { color:var(--muted); font-size:16px; line-height:1.85; max-width:30em; }
@media(max-width:650px) { .contact-introduction .contact-invitation { font-size:23px; margin-top:20px; } }

.contact-introduction .contact-invitation:first-child { margin-top:0; }

/* One coherent interaction cadence, scoped away from the homepage. */
.records-main .filters-enhanced { position:relative; isolation:isolate; }
.category-marker { position:absolute; left:0; top:0; background:#514bff; border-radius:3px; pointer-events:none; z-index:-1; }
.records-main .filters-enhanced button[aria-pressed="true"] { background:transparent; border-color:transparent; }
.records-main .filters button { min-height:44px; }
.records-main .archive-surface .archive-list a:hover .archive-name,
.records-main .archive-surface .archive-list a:focus-visible .archive-name { color:var(--ink); transform:none; }
.records-main .archive-surface .archive-list a:hover .archive-name::after,
.records-main .archive-surface .archive-list a:focus-visible .archive-name::after { transform:scaleX(0); }
.records-main .archive-surface .archive-list .archive-selected .archive-name { color:var(--accent); transform:translateX(10px); }
.records-main .archive-surface .archive-list .archive-selected .archive-name::after { transform:scaleX(1); }
.records-main .archive-surface .archive-list a:hover .archive-arrow,
.records-main .archive-surface .archive-list a:focus-visible .archive-arrow { background:transparent; color:var(--muted); border-color:var(--line); transform:none; }
.records-main .archive-surface .archive-list .archive-selected .archive-arrow { background:var(--accent); color:var(--bg); border-color:var(--accent); transform:rotate(45deg); }
.records-main .archive-surface .archive-list a:focus-visible { outline:2px solid var(--accent); outline-offset:-3px; }
.records-main .archive-surface .archive-list a { transition:background-color .16s; }
.records-main .archive-name { transition:color .16s,transform .26s cubic-bezier(.16,1,.3,1); }
.about-main .workflow-story .fde-cycle>.workflow-active h4 { transform:none; }
.workflow-position>span { display:inline-block; }
.about-main .participation-modes p,.about-main .fde-principles dd { max-width:48ch; }
.about-main .role-scope { row-gap:12px; }
@media(max-width:650px) {
 .about-main .participation-modes { margin-bottom:18px; }
 .about-main .participation-modes>div { padding-top:24px; padding-bottom:4px; }
 .about-main .workflow-story .fde-cycle>li { padding:26px 12px 30px; }
 .about-main .workflow-story .fde-cycle h4::before { margin-right:12px; }
 .about-main .contact-section { gap:28px; }
 .records-main .archive-list .archive-summary { line-height:1.85; }
 .records-main .archive-surface .archive-list .archive-selected .archive-name { transform:none; }
 .records-main .filters { scroll-padding-inline:4px; }
}
@media(prefers-reduced-motion:reduce) {
 .records-main .archive-surface .archive-list .archive-selected .archive-name,
 .records-main .archive-surface .archive-list .archive-selected .archive-arrow { transform:none; }
}

/* Project-linked technical experience; plain rows follow the editorial rhythm. */
.technology-section { border-top:1px solid var(--line); padding:64px 0; }
.technology-section h2 { font-size:clamp(28px,3vw,42px); margin:0 0 16px; }
.technology-intro { color:var(--muted); margin:0 0 36px; }
.technology-section dl { margin:0; }
.technology-row { display:grid; grid-template-columns:minmax(180px,1fr) minmax(0,1.5fr); gap:32px; border-top:1px solid var(--line); padding:25px 0; }
.technology-row dt { font-size:20px; font-weight:600; }
.technology-row dd { margin:0; }
.technology-stack { color:var(--accent); font-size:18px; line-height:1.7; margin:0 0 12px; }
.technology-row a { font-size:14px; }
.technology-tools { display:flex; flex-wrap:wrap; gap:8px 20px; list-style:none; padding:0; margin:20px 0; color:var(--accent); }
.detail-content #technical h3 { font-size:18px; margin-top:28px; }
@media(max-width:650px) { .technology-section { padding:40px 0; } .technology-row { grid-template-columns:1fr; gap:12px; padding:22px 0; } .technology-stack { font-size:16px; } }

/* Technology rows tie each tool to a concrete project, with one clear reading path. */
.technology-row { position:relative; padding:30px 0; grid-template-columns:minmax(150px,.8fr) minmax(0,1.6fr); }
.technology-row::before { content:""; position:absolute; left:0; top:-1px; width:100%; height:1px; background:var(--accent); transform:scaleX(0); transform-origin:left; transition:transform .3s ease; }
.technology-row:hover::before,.technology-row:focus-within::before { transform:scaleX(1); }
.technology-row dt { transition:color .18s; }
.technology-row:hover dt,.technology-row:focus-within dt { color:var(--accent); }
.technology-row .technology-tools { margin:0 0 12px; font-size:18px; gap:6px 20px; }
.technology-purpose { color:var(--muted); line-height:1.75; margin:0 0 16px; font-size:15px; }
.technology-project { display:inline-flex; align-items:center; gap:16px; min-height:44px; }
.technology-project span { transition:transform .2s ease; }
.technology-project:hover span { transform:translate(3px,-3px); }
.technology-project:focus-visible { outline:2px solid var(--accent); outline-offset:6px; }
.technical-flow { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; padding:0; margin:24px 0 36px; list-style:none; counter-reset:flow; }
.technical-flow li { position:relative; padding:22px 0 22px 34px; border-top:1px solid var(--line); counter-increment:flow; }
.technical-flow li::before { content:counter(flow,decimal-leading-zero); position:absolute; left:0; top:24px; color:var(--accent); font-size:12px; font-variant-numeric:tabular-nums; }
.technical-flow strong { font-size:17px; }
.detail-content .technical-flow p { font-size:14px; color:var(--muted); margin:10px 0 0; line-height:1.7; }
@media(max-width:650px) { .technology-row { grid-template-columns:1fr; gap:16px; } .technology-row .technology-tools { font-size:16px; } .technical-flow { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .technology-row::before,.technology-row dt,.technology-project span { transition:none; } .technology-project:hover span { transform:none; } }

/* About reading hierarchy: concise roles, compact tools, optional detail. */
.about-main .participation-modes p { color:var(--ink); font-size:18px; line-height:1.6; margin-bottom:18px; }
.about-main .participation-modes .text-link { color:var(--muted); font-size:14px; min-height:44px; display:inline-flex; align-items:center; gap:16px; }
.about-main .participation-modes .text-link:hover { color:var(--accent); }
.about-main .fde-method-heading>p:last-child { color:var(--muted); font-size:16px; }
.about-main #technology { padding-block:44px; }
.about-main #technology dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 36px; }
.about-main #technology .technology-row { display:block; min-width:0; padding:22px 0 14px; }
.about-main #technology .technology-row dt { font-size:22px; font-weight:600; line-height:1.4; color:var(--ink); }
.about-main #technology .technology-tools { margin-block:18px 8px; gap:8px; font-size:13px; line-height:1.5; font-family:ui-monospace,SFMono-Regular,Consolas,monospace; }
.about-main #technology .technology-tools li { padding:5px 8px; background:rgba(150,152,255,.07); border:1px solid rgba(150,152,255,.16); border-radius:4px; overflow-wrap:anywhere; }
.about-main #technology .technology-project { margin-top:4px; color:var(--muted); font-size:14px; }
.about-main #technology .technology-project:hover { color:var(--accent); }
.about-main .cooperation-section { padding-block:44px; border-top:1px solid var(--line); }
.about-main .cooperation-section h2 { margin:0 0 24px; font-size:clamp(28px,3vw,42px); line-height:1.3; }
.about-main .about-question { border-top:1px solid var(--line); }
.about-main .about-question:last-child { border-bottom:1px solid var(--line); }
.about-main .about-question summary { display:grid; grid-template-columns:28px minmax(0,1fr) 28px; gap:16px; align-items:center; min-height:76px; padding-block:18px; cursor:pointer; list-style:none; font-size:21px; font-weight:600; color:var(--ink); line-height:1.4; }
.about-main .about-question summary::-webkit-details-marker { display:none; }
.about-main .question-number { color:var(--accent); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:12px; font-weight:400; font-variant-numeric:tabular-nums; }
.about-main .question-symbol { color:var(--accent); justify-self:end; font-size:24px; font-weight:400; }
.about-main .question-symbol::after { content:"+"; }
.about-main .about-question[open] .question-symbol::after { content:"−"; }
.about-main .about-question summary:hover { color:var(--accent); }
.about-main .about-question summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.about-main .question-answer { margin-inline-start:44px; padding-bottom:24px; max-width:65ch; }
.about-main .question-answer p { color:var(--muted); font-size:16px; line-height:1.6; margin:0 0 14px; }
.about-main .question-answer .question-lead { color:var(--ink); font-size:18px; font-weight:600; }
.about-main .question-links { display:flex; flex-wrap:wrap; gap:12px 24px; }
.about-main .question-links a { font-size:14px; color:var(--accent); min-height:44px; display:inline-flex; align-items:center; }
@media(max-width:850px) { .about-main #technology dl { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) {
 .about-main .participation-modes p { font-size:17px; }
 .about-main #technology dl { grid-template-columns:1fr; gap:12px; }
 .about-main #technology,.about-main .cooperation-section { padding-block:32px; }
 .about-main #technology .technology-tools { font-size:13px; }
 .about-main .about-question summary { font-size:18px; gap:10px; grid-template-columns:24px minmax(0,1fr) 24px; }
 .about-main .question-answer { margin-inline-start:0; }
 .about-main .question-answer .question-lead { font-size:17px; }
}

/* About: image-led capabilities and optional method detail. */
.about-main .about-opening { display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:24px 40px; padding-bottom:36px; }
.about-identity { color:var(--accent); font-size:13px; letter-spacing:.06em; margin:0 0 20px; }
.about-main .about-opening-intro { font-size:clamp(22px,2.4vw,32px); max-width:24em; margin-top:22px; }
.about-consult { display:inline-flex; align-items:center; gap:28px; min-height:48px; padding:10px 20px; border:1px solid var(--accent); color:var(--accent); }
.about-consult:hover { background:rgba(150,152,255,.1); }
.about-main #technology { border-top:0; padding-block:24px 40px; }
.about-main #technology h2 { font-size:clamp(24px,2.5vw,34px); margin-bottom:28px; }
.capability-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
.capability-card { min-width:0; border:1px solid var(--line); background:rgba(255,255,255,.015); }
.capability-image { display:block; position:relative; aspect-ratio:16/10; overflow:hidden; background:#1c2227; }
.capability-image img { display:block; width:100%; height:100%; object-fit:contain; padding:12px; transition:transform .3s ease; }
.capability-image>span { position:absolute; inset-inline-end:12px; bottom:12px; color:var(--ink); background:#191a20; padding:4px 8px; }
.capability-image:hover img { transform:scale(1.025); }
.capability-copy { padding:22px; }
.capability-role { font-size:12px; color:var(--accent); margin:0 0 12px; }
.capability-copy h3 { font-size:27px; line-height:1.3; margin:0 0 14px; }
.capability-copy .capability-lead { font-size:16px; line-height:1.6; margin:0 0 12px; color:var(--muted); }
.capability-scope { color:var(--muted); font-size:14px; line-height:1.65; margin:12px 0; }
.about-main #technology .technology-project { color:var(--accent); margin:0 0 8px; }
.about-disclosure>summary { display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:44px; padding-block:10px; color:var(--muted); cursor:pointer; list-style:none; font-size:14px; }
.about-disclosure>summary::-webkit-details-marker { display:none; }
.about-disclosure>summary>span { color:var(--accent); transition:transform .2s ease; }
.about-disclosure[open]>summary>span { transform:rotate(45deg); }
.about-disclosure>summary:hover { color:var(--accent); }
.about-disclosure>summary:focus-visible,.about-consult:focus-visible,.capability-image:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.capability-more { margin-top:18px; border-top:1px solid var(--line); }
.capability-more-links { display:flex; flex-wrap:wrap; gap:16px 32px; padding-block:12px; }
.capability-more-links a { min-height:44px; display:inline-flex; align-items:center; }
.about-main .contact-section { padding-block:40px; border-block:1px solid var(--line); scroll-margin-top:80px; }
.about-main .contact-start { max-width:28em; }
.about-main .fde-method { padding-block:40px; }
.about-main .fde-method-heading { display:block; }
.about-main .fde-method-heading h2 { font-size:clamp(28px,3vw,42px); }
.about-main .workflow-story { margin-top:26px; gap:36px; }
.about-main .workflow-intro h3 { font-size:clamp(22px,2.2vw,30px); }
.about-main .workflow-story .fde-cycle>li { min-height:0; padding:22px 20px; }
.about-main .workflow-story .fde-cycle h4 { margin:0 0 10px; }
.about-main .workflow-story .fde-cycle p { font-size:15px; line-height:1.65; }
.about-main .workflow-story .fde-cycle .workflow-lead { color:var(--ink); font-size:17px; }
.about-main .workflow-story .about-disclosure>div p { margin-block:12px; color:var(--muted); }
.about-main .experience-section { padding-block:0 24px; }
.about-participation { border-top:1px solid var(--line); }
@media(max-width:850px) {
 .capability-grid { grid-template-columns:1fr; gap:20px; }
 .capability-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .capability-image { height:100%; aspect-ratio:auto; min-height:220px; }
}
@media(max-width:650px) {
 .about-main .about-opening { display:block; padding-bottom:28px; }
 .about-consult { margin-top:24px; }
 .about-main #technology { padding-top:8px; }
 .capability-card { display:block; }
 .capability-image { aspect-ratio:16/10; min-height:0; height:auto; }
 .capability-copy { padding:18px; }
 .capability-copy h3 { font-size:24px; }
 .about-main .contact-section { padding-block:32px; }
 .about-main .workflow-story { margin-top:20px; gap:18px; }
 .about-main .workflow-story .fde-cycle>li { padding:20px 12px; }
 .about-main .participation-modes { margin-top:12px; }
}
@media(prefers-reduced-motion:reduce) {
 .capability-image img,.about-disclosure>summary>span { transition:none; }
 .capability-image:hover img { transform:none; }
}

/* About motion layer: local, finite and independent of the controls. */
.about-main .about-opening { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); align-items:center; gap:48px; }
.about-opening-copy { min-width:0; }
.about-opening-copy .about-consult { margin-top:26px; }
.fde-map { position:relative; isolation:isolate; overflow:hidden; border:1px solid rgba(150,152,255,.28); border-radius:12px; padding:24px; background:linear-gradient(135deg,#1b1c2a,#12161c 65%); box-shadow:0 20px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.05); }
.fde-map::before { content:""; position:absolute; inset:0; z-index:-1; opacity:.35; background-image:linear-gradient(rgba(150,152,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(150,152,255,.1) 1px,transparent 1px); background-size:28px 28px; pointer-events:none; }
.fde-map::after { content:""; position:absolute; width:260px; height:260px; inset-inline-start:calc(50% - 130px); top:15px; z-index:-1; background:radial-gradient(ellipse,rgba(129,103,255,.2),transparent 65%); pointer-events:none; }
.fde-map-heading,.fde-map-footer { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.fde-map-heading { color:var(--ink); font-size:14px; }
.fde-map-mark { color:var(--accent); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:10px; letter-spacing:.06em; white-space:nowrap; }
.fde-map-route { display:grid; grid-template-columns:minmax(0,1fr) 30px minmax(0,1.3fr) 30px minmax(0,1fr); align-items:start; gap:0; padding-block:42px 38px; }
.fde-map-node { min-width:0; text-align:center; font-size:13px; color:var(--muted); }
.fde-node-symbol { position:relative; display:grid; place-items:center; width:60px; height:60px; margin:0 auto 20px; border:1px solid rgba(150,152,255,.28); border-radius:14px; color:var(--accent); background:#1d1e2c; transition:background-color .15s,color .15s,box-shadow .15s; }
.fde-node-symbol svg { width:32px; height:32px; }
.fde-map-core .fde-node-symbol { border-radius:50%; background:linear-gradient(145deg,#5350ba,#272250); border-color:#a3a1ff; color:#fff; }
.fde-node-symbol strong { font-size:24px; letter-spacing:-.05em; }
.fde-core-ring { position:absolute; inset:-7px; border:1px solid rgba(150,152,255,.4); border-radius:50%; pointer-events:none; }
.fde-core-ring-outer { inset:-15px; border-color:transparent var(--accent) transparent rgba(150,152,255,.2); transform:rotate(-20deg); }
.fde-map-link { height:1px; position:relative; background:rgba(150,152,255,.25); margin-top:30px; }
.fde-map-link>span { display:block; width:100%; height:1px; background:var(--accent); transform-origin:left center; }
.fde-map-link>i { position:absolute; width:5px; height:5px; border-top:1px solid var(--accent); border-right:1px solid var(--accent); transform:rotate(45deg); inset-inline-end:0; top:-2px; }
.fde-map[data-map-step="1"] .fde-map-node:nth-child(1) .fde-node-symbol,
.fde-map[data-map-step="2"] .fde-map-core .fde-node-symbol,
.fde-map[data-map-step="3"] .fde-map-node:nth-child(5) .fde-node-symbol { color:#fff; background:#49477e; box-shadow:0 0 28px rgba(150,152,255,.22); }
.fde-map-footer { padding-top:16px; border-top:1px solid rgba(150,152,255,.16); }
.fde-map-caption { color:var(--muted); font-size:12px; line-height:1.5; }
.fde-map-replay { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:6px 0 6px 12px; color:var(--accent); background:none; border:0; font:inherit; font-size:12px; cursor:pointer; flex-shrink:0; }
.fde-map-replay[hidden] { display:none; }
.fde-map-replay>span { font-size:20px; }
.fde-map-replay:hover { color:var(--ink); }
.fde-map-replay:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.capability-card { position:relative; isolation:isolate; background:#1b1c21; border-color:rgba(255,255,255,.13); box-shadow:0 10px 24px rgba(0,0,0,.16); transition:border-color .15s,box-shadow .15s; }
.capability-card::before { content:""; position:absolute; inset:0; z-index:-1; opacity:0; background:radial-gradient(ellipse at 90% 90%,rgba(150,152,255,.13),transparent 65%); transition:opacity .15s; pointer-events:none; }
.capability-card:hover,.capability-card:focus-within { border-color:rgba(150,152,255,.6); box-shadow:0 14px 36px rgba(0,0,0,.25); }
.capability-card:hover::before,.capability-card:focus-within::before { opacity:1; }
.capability-image { background:linear-gradient(145deg,#242a32,#181d22); }
.capability-image img { outline:1px solid rgba(255,255,255,.1); outline-offset:-12px; }
.capability-mark { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:12px; }
.capability-mark .capability-role { margin:0; }
.capability-number { color:var(--accent); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:12px; }
.about-main .workflow-story .fde-cycle>li { position:relative; border-top:0; margin-inline-start:14px; border-inline-start:1px solid rgba(150,152,255,.3); padding-inline-start:30px; transition:background-color .15s; }
.about-main .workflow-story .fde-cycle>li:last-child { border-inline-start-color:transparent; }
.about-main .workflow-story .fde-cycle h4::before { position:absolute; inset-inline-start:-15px; top:22px; display:grid; place-items:center; width:28px; height:28px; margin:0; border:1px solid rgba(150,152,255,.5); border-radius:50%; background:#1a1b25; transition:background-color .15s,color .15s; }
.about-main .workflow-story .fde-cycle>.workflow-active h4::before { color:#fff; background:#5550b5; }
.about-main .workflow-story .fde-cycle>.workflow-active { background:linear-gradient(90deg,rgba(150,152,255,.11),transparent); }
@media(hover:hover) and (pointer:fine) {
 .capability-image { perspective:900px; }
 .capability-image:hover img { transform:translateY(-3px) rotateX(2deg) rotateY(-2deg) scale(1.025); }
}
@media(max-width:850px) {
 .about-main .about-opening { grid-template-columns:1fr; gap:30px; }
 .fde-map { max-width:560px; width:100%; }
}
@media(max-width:650px) {
 .about-main .about-opening { display:grid; gap:28px; }
 .fde-map { padding:18px; }
 .fde-map-heading { font-size:13px; gap:8px; }
 .fde-map-route { grid-template-columns:minmax(0,1fr) 16px minmax(0,1.25fr) 16px minmax(0,1fr); padding-block:36px 28px; }
 .fde-map-node { font-size:11px; }
 .fde-node-symbol { width:48px; height:48px; margin-bottom:18px; border-radius:10px; }
 .fde-node-symbol svg { width:28px; height:28px; }
 .fde-map-link { margin-top:24px; }
 .fde-node-symbol strong { font-size:21px; }
 .fde-core-ring-outer { inset:-12px; }
 .fde-map-footer { gap:10px; }
 .fde-map-replay { font-size:11px; padding-inline-start:4px; }
 .about-main .workflow-story .fde-cycle>li { padding-inline-start:24px; }
 .about-main .workflow-story .fde-cycle h4::before { top:20px; }
}
@media(prefers-reduced-motion:reduce) {
 .fde-node-symbol,.capability-card,.capability-card::before,.about-main .workflow-story .fde-cycle h4::before { transition:none; }
 .fde-map-replay { display:none; }
 .capability-image:hover img { transform:none; }
}

/* Labeled source excerpts within existing case typography. */
.case-source-excerpt { border-left:2px solid var(--accent); margin:24px 0; padding:4px 0 4px 18px; scroll-margin-top:100px; }
.case-source-excerpt cite { color:var(--muted); font-size:13px; font-style:normal; }

/* Project catalogue: typography and open columns, without panel stacking.
   Only this page changes; original native links, filters and motion own state. */
.records-main.records-catalog { padding-top:36px; padding-bottom:12px; }
.records-main.records-catalog .records-heading {
 display:flex; align-items:baseline; justify-content:space-between; gap:24px;
 padding:0; margin:0 0 28px; border:0;
}
.records-main.records-catalog .records-heading::after { display:none; }
.records-main.records-catalog .records-heading h1 {
 font-size:clamp(36px,4.2vw,60px); line-height:1.2; letter-spacing:-.045em; margin:0; color:var(--ink);
}
.records-main.records-catalog .records-heading>p { margin:0; font-size:14px; color:#a7a8b2; line-height:1.6; }
.records-main.records-catalog #archive { border-top:0; }
.records-main.records-catalog .archive-tools {
 display:grid; grid-template-columns:minmax(0,1fr) minmax(200px,260px); gap:32px;
 padding:0; border:0; border-bottom:1px solid #36373e; border-radius:0; background:none;
 align-items:end;
}
.records-main.records-catalog .archive-tools .filters {
 display:flex; flex-wrap:nowrap; gap:22px; width:100%; max-width:none; min-width:0;
 overflow-x:auto; scrollbar-width:none; padding:0; align-self:end;
}
.records-main.records-catalog .filters::-webkit-scrollbar { display:none; }
.records-main.records-catalog .filters button {
 position:relative; z-index:1; min-height:54px; flex:0 0 auto; padding:0;
 border:0; border-radius:0; background:none; color:#a7a8b2; font-size:13px;
}
.records-main.records-catalog .filters button:hover,
.records-main.records-catalog .filters button[aria-pressed="true"] { color:#f1f1f4; background:none; }
.records-main.records-catalog .category-marker { background:none; border-radius:0; }
.records-main.records-catalog .category-marker::after {
 content:''; position:absolute; inset:auto 0 0; height:2px; background:var(--accent);
}
.records-main.records-catalog .archive-tools .search-field {
 position:relative; min-width:0; max-width:none; width:100%; padding:0 0 6px 20px;
 border:0; border-inline-start:1px solid #36373e; border-radius:0; background:none;
}
.records-main.records-catalog .search-field label {
 color:#a7a8b2; font-size:10px; line-height:1.2; letter-spacing:.02em; margin:0;
}
.records-main.records-catalog .search-field input {
 min-height:36px; padding:3px 0; border:0; border-radius:0; background:none;
 font-size:14px; outline:none;
}
.records-main.records-catalog .search-field:focus-within { box-shadow:inset 0 -2px var(--accent); }
.records-main.records-catalog .search-field input:focus-visible { outline:none; }
.records-main.records-catalog .archive-overview {
 display:flex; align-items:start; justify-content:space-between; gap:24px; margin:14px 0 8px;
}
.records-main.records-catalog .result-count { margin:0; padding-top:10px; color:#a7a8b2; font-size:12px; letter-spacing:0; }
.records-main.records-catalog .archive-search-guide { max-width:28em; font-size:12px; text-align:right; }
.records-main.records-catalog .archive-search-guide>summary {
 display:flex; align-items:center; justify-content:flex-end; gap:14px;
 min-height:40px; cursor:pointer; list-style:none; color:#a7a8b2;
}
.records-main.records-catalog .archive-search-guide>summary::-webkit-details-marker { display:none; }
.records-main.records-catalog .archive-search-guide>summary>span { font-size:18px; color:var(--accent); }
.records-main.records-catalog .archive-search-guide[open]>summary>span { transform:rotate(45deg); }
.records-main.records-catalog .archive-search-guide .customer-search-help { margin:0 0 8px; font-size:12px; }
.records-main.records-catalog .customer-search-links { justify-content:flex-end; margin:0 0 16px; }
.records-main.records-catalog .archive-list {
 display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:48px; row-gap:0;
 margin:0 0 48px; padding:0; overflow:clip;
}
.records-main.records-catalog .archive-list>li {
 min-width:0; border:0; border-top:1px solid #303138; border-radius:0; background:none;
}
.records-main.records-catalog .archive-list>li[hidden] { display:none; }
.records-main.records-catalog .archive-list>li>a {
 display:grid; grid-template-columns:minmax(0,1fr) 28px; grid-template-rows:auto 1fr;
 gap:14px 20px; align-content:start; align-items:start; min-height:178px; height:100%;
 padding:22px 14px 26px 0; border:0; border-radius:0; background:none;
}
.records-main.records-catalog .archive-title-group { grid-column:1; grid-row:1; }
.records-main.records-catalog .archive-meta { margin-bottom:9px; font-size:10px; gap:12px; letter-spacing:.025em; }
.records-main.records-catalog .archive-meta>span { color:#aaaaf0; }
.records-main.records-catalog .archive-name {
 display:block; width:auto; max-width:24em; color:#eeeef2; font-size:23px;
 font-weight:550; line-height:1.45; letter-spacing:-.025em;
}
.records-main.records-catalog .archive-name::after { display:none; }
.records-main.records-catalog .archive-summary {
 grid-column:1; grid-row:2; color:#aaabb5; font-size:13px; line-height:1.85;
 align-self:start; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden;
}
.records-main.records-catalog .archive-list>li>a>.archive-arrow {
 grid-column:2; grid-row:1; width:28px; height:28px; margin-top:23px;
 border:0; background:none; color:var(--accent); font-size:23px;
}
.records-main.records-catalog .archive-surface .archive-list .archive-selected>a,
.records-main.records-catalog .archive-returned a { background:none; }
.records-main.records-catalog .archive-surface .archive-list .archive-selected .archive-name {
 color:var(--accent); transform:none;
}
.records-main.records-catalog .archive-surface .archive-list .archive-selected .archive-arrow,
.records-main.records-catalog .archive-list a:hover .archive-arrow {
 color:var(--accent); background:none; border:0; transform:translate(3px,-3px);
}
.records-main.records-catalog .archive-follow { border:0; border-top:2px solid var(--accent); background:none; }
.records-main.records-catalog .empty { margin:24px 0 50px; padding:26px 0; border-top:1px solid #36373e; }
.records-main.records-catalog .empty>p { font-size:22px; color:var(--ink); }
.records-main.records-catalog .empty .reset-search { display:inline-flex; align-items:center; min-height:44px; }
@media(max-width:1050px) {
 .records-main.records-catalog .archive-tools { grid-template-columns:minmax(0,1fr); gap:12px; }
 .records-main.records-catalog .archive-tools .search-field { grid-row:1; border-inline-start:0; border-bottom:1px solid #303138; padding-left:0; padding-bottom:10px; }
 .records-main.records-catalog .archive-tools .filters { width:100%; }
 .records-main.records-catalog .archive-list { column-gap:32px; }
 .records-main.records-catalog .archive-name { font-size:21px; }
}
@media(max-width:650px) {
 .records-main.records-catalog { padding-top:24px; }
 .records-main.records-catalog .records-heading { display:block; margin-bottom:24px; }
 .records-main.records-catalog .records-heading h1 { font-size:38px; }
 .records-main.records-catalog .records-heading>p { font-size:12px; margin-top:8px; }
 .records-main.records-catalog .archive-list { grid-template-columns:minmax(0,1fr); margin-bottom:30px; }
 .records-main.records-catalog .archive-list>li>a { min-height:0; gap:12px 14px; padding:20px 0 24px; }
 .records-main.records-catalog .archive-name { font-size:21px; }
 .records-main.records-catalog .archive-summary { font-size:13px; }
 .records-main.records-catalog .archive-overview { gap:16px; margin-block:8px 2px; }
 .records-main.records-catalog .archive-search-guide { max-width:65%; }
 .records-main.records-catalog .filters { gap:20px; }
}
@media(prefers-reduced-motion:reduce) {
 .records-main.records-catalog .archive-list a:hover .archive-arrow,
 .records-main.records-catalog .archive-surface .archive-list .archive-selected .archive-arrow { transform:none; }
}
