.projects-page .site-header nav a{white-space:nowrap}.site-header nav a[aria-current=page]{color:#7d6400}.article-hero{background:var(--graphite);color:white;padding:35px 0 55px}.breadcrumb{display:flex;gap:14px;font-size:11px;color:#c4cbce;margin-bottom:36px}.breadcrumb a:hover{text-decoration:underline}.article-hero h1{font-size:clamp(42px,5vw,72px);line-height:1.03;max-width:950px}.article-hero p{font-size:17px;line-height:1.75;max-width:700px;margin-top:24px;color:#cbd1d3}.article-tags{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:27px;font-size:11px;color:var(--yellow)}.article-layout{display:grid;grid-template-columns:250px minmax(0,820px);gap:70px;padding-block:56px 65px;justify-content:center}.sidebar-inner{position:sticky;top:30px}.sidebar-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700;padding-bottom:18px}.article-outline{margin:0;display:flex;flex-direction:column;gap:0;font-size:10px;color:var(--muted)}.article-outline a{display:flex;gap:12px;padding:12px 14px;border-left:2px solid var(--line);line-height:1.7}.article-outline a span{font-size:12px;color:var(--text)}.article-outline a:hover,.article-outline a[aria-current=location]{border-color:var(--yellow);background:#f4f4ed}.sidebar-contact{margin-top:35px;padding:20px;background:var(--paper);font-size:12px;line-height:1.7}.sidebar-contact p{font-weight:700;margin-bottom:12px}.sidebar-contact a{display:block;margin-top:10px}.sidebar-contact a:first-of-type{text-decoration:underline;text-underline-offset:4px}.project-article{min-width:0}.article-intro{font-size:19px;line-height:1.75}.article-context{font-size:12px;color:var(--muted);margin-top:20px;padding-left:15px;border-left:2px solid var(--line)}.article-section{margin-top:55px;padding-top:35px;border-top:1px solid var(--line);scroll-margin-top:30px}.article-section h2{font-size:clamp(34px,3.8vw,46px);line-height:1.08;margin-bottom:24px}.article-section>p,.article-section li p,.article-note p{font-size:15px;line-height:1.9;margin-top:18px}.article-section>p a{text-decoration:underline;text-underline-offset:4px}.article-note{background:var(--paper);border-left:3px solid var(--yellow);padding:23px 27px;margin-top:28px}.article-note strong{font-size:15px}.article-note p{margin-top:9px}.article-figure{margin:30px 0}.article-figure img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--paper)}.article-figure figcaption{font-size:11px;color:var(--muted);line-height:1.7;padding-top:12px}.article-section>.button,.article-section>.text-link{margin-top:28px}.article-table-wrap{overflow-x:auto;margin-top:28px;border:1px solid var(--line)}.article-table-wrap table{border-collapse:collapse;width:100%;min-width:500px;font-size:13px}.article-table-wrap caption{text-align:left;font-size:12px;padding:16px 20px;color:var(--muted);background:var(--paper)}.article-table-wrap th,.article-table-wrap td{text-align:left;padding:16px 20px;border-top:1px solid var(--line);white-space:nowrap}.article-table-wrap thead{background:var(--paper);font-size:11px}.article-table-wrap tbody th{font-weight:600}.work-steps{list-style:decimal-leading-zero;padding-left:35px;margin:30px 0 0}.work-steps li{padding-left:12px;margin-top:26px}.work-steps li::marker{color:#937900;font-size:12px;font-weight:700}.work-steps strong{font-size:16px}.work-steps li p{margin-top:8px}.brief-list{padding-left:21px;margin-top:25px;font-size:15px;line-height:1.8}.brief-list li{padding-left:8px;margin-top:12px}.brief-list li::marker{color:#a58500}.article-callout{background:var(--deep);color:white;padding:32px;margin-top:32px}.article-callout h3{font-size:31px}.article-callout p{font-size:14px;line-height:1.8;margin-top:16px;color:#c7cdd0}.article-callout .button{margin-top:23px}.article-bottom{padding-block:38px;display:flex;gap:22px 35px;align-items:center;flex-wrap:wrap;font-size:12px}.article-bottom>p{color:var(--muted);margin-right:auto}.article-bottom a{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1200px){.projects-page .header-inner{gap:18px}.projects-page .header-cta{display:none}.projects-page .site-header nav{gap:18px}.article-layout{gap:35px;grid-template-columns:215px minmax(0,1fr)}}
@media(max-width:767px){.article-hero{padding-block:25px 35px}.breadcrumb{margin-bottom:25px}.article-hero h1{font-size:43px}.article-hero p{font-size:14px;margin-top:20px}.article-tags{font-size:10px;gap:10px 20px}.article-layout{display:block;padding-block:27px 40px}.article-sidebar{margin-bottom:30px}.sidebar-inner{position:static}.sidebar-label{padding-bottom:12px}.article-outline{flex-direction:row;overflow-x:auto;gap:8px;padding-bottom:8px}.article-outline a{white-space:nowrap;border:1px solid var(--line);padding:9px 12px}.article-outline a span{font-size:11px}.sidebar-contact{display:none}.article-intro{font-size:16px}.article-section{margin-top:35px;padding-top:28px}.article-section h2{font-size:35px;margin-bottom:21px}.article-section>p,.article-section li p,.article-note p{font-size:14px}.article-note{padding:20px}.article-callout{padding:24px}.article-callout h3{font-size:28px}.brief-list{font-size:14px}.article-bottom{flex-direction:column;align-items:flex-start;padding-block:27px}.projects-page .site-header nav{gap:22px;flex-wrap:nowrap}.article-section .button{font-size:11px;gap:15px}.article-context{font-size:11px}}

/* Catalog and article navigation share the existing graphite/yellow identity. */
.catalog-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:55px;padding-block:48px 64px;align-items:start}
.catalog-content{min-width:0}
.projects-page .sidebar-inner{top:24px;display:flex;flex-direction:column;max-height:calc(100svh - 48px);overflow:visible;padding-right:0}
.projects-page .sidebar-navigation{min-height:0;overflow-y:auto;scrollbar-width:thin;padding-right:7px}
.projects-page .sidebar-contact{display:block;flex:0 0 auto;margin-top:18px}
.projects-page .sidebar-contact p{margin-top:0;margin-bottom:12px}
.projects-page .sidebar-contact a{color:var(--text);line-height:1.7;overflow-wrap:anywhere}
.projects-page .sidebar-contact a[href^="tel:"]{font-size:15px;font-weight:700;white-space:nowrap}
.sidebar-materials,.sidebar-toc{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:22px}
.article-sidebar summary{cursor:pointer;list-style:none;font-size:12px;line-height:1.5;font-weight:700;padding:0 18px 15px 0;position:relative}
.article-sidebar summary::-webkit-details-marker{display:none}
.article-sidebar summary::after{content:"+";position:absolute;right:2px;top:0;font-size:18px;line-height:1}
.article-sidebar details[open]>summary::after{content:"−"}
.sidebar-materials nav{margin:0;display:block}
.material-links{list-style:none;margin:0;padding:0}
.material-links a{display:block;font-size:12px;font-weight:500;line-height:1.6;padding:11px 12px;border-left:2px solid transparent;overflow-wrap:anywhere}
.material-links a:hover,.material-links a[aria-current=page]{background:var(--paper);border-color:var(--yellow)}
.material-links a[aria-current=page]{font-weight:700}
.all-materials{display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding:9px 12px;font-size:12px;border-bottom:1px solid var(--line)}
.sidebar-topics nav{margin:0;display:grid;gap:3px}
.sidebar-topics nav a{font-size:12px;display:flex;justify-content:space-between;gap:14px;line-height:1.65;padding:9px 12px;font-weight:500}
.sidebar-topics nav a[aria-current=page]{background:var(--paper);border-left:2px solid var(--yellow);padding-left:10px}
.sidebar-topics nav span{font-size:11px;color:var(--muted)}
.sidebar-contact{margin-top:25px}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:25px;font-size:12px;line-height:1.7;color:#cbd1d3}
.article-hero h1{max-width:980px;overflow-wrap:break-word}
.projects-page .breadcrumb{margin-left:0;flex-wrap:wrap;line-height:1.8}
.projects-page .breadcrumb,.projects-page .article-sidebar nav,.projects-page .catalog-pagination{border:0;overflow:visible;order:initial;width:auto}
.projects-page .breadcrumb{padding:0}
.projects-page .article-sidebar nav{padding:0}
.projects-page .project-article{max-width:820px}
.projects-page .article-section>p,.projects-page .article-section li p,.projects-page .article-note p,.projects-page .brief-list{font-size:16px;line-height:1.85}
.projects-page .article-section h2{font-size:clamp(30px,3.2vw,42px);line-height:1.16}
.projects-page .article-figure figcaption{font-size:12px}
.projects-page .article-figure video{display:block;width:100%;height:auto;max-width:100%;background:var(--deep)}
.article-read-next{border-top:1px solid var(--line);padding-top:32px;margin-top:48px}
.article-read-next>h2{font-size:32px}
.next-articles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}
.next-articles>a{background:var(--paper);padding:23px;display:flex;flex-direction:column;gap:14px;border-bottom:3px solid var(--line)}
.next-articles>a:hover{border-color:var(--yellow)}
.next-articles>a>span:first-child{font-size:11px;color:var(--muted)}
.next-articles strong{font-family:var(--font-title);font-size:26px;line-height:1.2;font-weight:500}
.next-articles>a>span:last-child{margin-top:auto;align-self:flex-end}
.catalog-search label{display:block;font-size:12px;font-weight:700;margin-bottom:10px}
.search-row{display:flex;align-items:stretch;gap:0;border:1px solid var(--line);background:#fff}
.search-row:focus-within{border-color:#9a7b00}
.search-row input{flex:1;min-width:0;border:0;padding:16px 18px;outline:none;background:transparent;font-size:14px;color:var(--text)}
.search-row button{border:0;background:var(--yellow);padding:15px 22px;font-weight:700;font-size:12px;white-space:nowrap}
.search-row button span{margin-left:15px}
.search-row button:hover{background:#f2c000}
.catalog-results{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:25px 0 24px;font-size:12px}
.catalog-results>p{font-weight:700;margin:0}
.catalog-results>span{color:var(--muted);font-size:11px}
.catalog-results>a{text-decoration:underline;text-underline-offset:4px}
.result-count{display:inline-flex;padding:1px 8px;min-width:26px;justify-content:center;background:var(--paper);margin-left:8px;border-radius:2px}
.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px}
.project-card{display:flex;flex-direction:column;border:1px solid var(--line);min-width:0}
.project-card-image{display:block;aspect-ratio:4/3;background:var(--paper);overflow:hidden}
.project-card-image img{width:100%;height:100%;object-fit:contain}
.project-card-copy{padding:24px;display:flex;flex-direction:column;flex:1}
.card-meta{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted)}
.project-card h2{font-size:30px;line-height:1.16;margin:15px 0 0;overflow-wrap:break-word}
.project-card h2 a:hover{text-decoration:underline;text-decoration-color:#cda500;text-underline-offset:4px}
.project-card p{font-size:13px;line-height:1.85;margin:16px 0 24px}
.project-card-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px}
.project-card-foot time{color:var(--muted)}
.project-card-foot a{font-weight:700}
.catalog-pagination{margin:32px 0 0;display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}
.page-number{min-width:40px;min-height:40px;padding:9px 12px;text-align:center;border:1px solid var(--line);font-size:12px}
.page-number[aria-current=page]{background:var(--yellow);border-color:var(--yellow);font-weight:700}
.page-direction{font-size:12px;padding:10px 12px}
.page-gap{padding:6px;color:var(--muted)}
.catalog-pagination a:hover{border-color:var(--graphite);text-decoration:underline}
.catalog-empty{background:var(--paper);padding:36px}
.catalog-empty h2{font-size:32px}
.catalog-empty p{font-size:15px;line-height:1.8;margin:18px 0 25px;max-width:600px}
@media(max-width:1200px){.catalog-layout{grid-template-columns:215px minmax(0,1fr);gap:32px}.project-card-copy{padding:20px}.project-card h2{font-size:27px}}
@media(max-width:1000px){.projects-page .header-inner{flex-wrap:wrap;padding-top:18px;gap:14px}.projects-page .header-contact{margin-left:auto}.projects-page .site-header nav{order:3;width:100%;margin:0;padding-block:12px;border-top:1px solid var(--line);gap:24px;overflow-x:auto;flex-wrap:nowrap}}
@media(max-width:950px) and (min-width:768px){.projects-grid{grid-template-columns:1fr}.project-card{display:grid;grid-template-columns:180px minmax(0,1fr)}.project-card-image{aspect-ratio:auto;height:100%;min-height:200px}.project-card-copy{padding:20px}.catalog-results>span{display:none}}
@media(max-width:767px){
 .catalog-layout{display:block;padding-block:28px 40px}
 .projects-page .sidebar-inner{position:static;display:block;max-height:none;overflow:visible;padding-right:0}
 .projects-page .sidebar-navigation{overflow:visible;padding-right:0}
 .projects-page .sidebar-contact{display:block;margin-top:18px}
 .article-sidebar summary{padding:12px 30px 12px 0;font-size:13px}
 .article-sidebar summary::after{top:13px}
 .sidebar-materials,.sidebar-toc{margin-bottom:12px;padding-bottom:8px}
 .sidebar-materials nav{padding-bottom:10px}
 .material-links a{font-size:13px}
 .projects-page .article-outline{flex-direction:column;overflow:visible;gap:0;padding-bottom:10px}
 .projects-page .article-outline a{white-space:normal;border:0;border-left:2px solid var(--line);padding:9px 12px}
 .projects-page .article-outline a span{font-size:12px}
 .sidebar-topics{padding-top:15px}
 .sidebar-topics .sidebar-label{display:none}
 .sidebar-topics nav{display:flex;flex-wrap:wrap;gap:8px}
 .sidebar-topics nav a,.sidebar-topics nav a[aria-current=page]{padding:8px 10px;border:1px solid var(--line);font-size:11px}
 .sidebar-topics nav a[aria-current=page]{border-color:#9a7b00}
 .article-meta{font-size:11px;gap:7px 16px}
 .projects-page .article-hero h1{font-size:clamp(35px,8vw,43px)}
 .projects-page .article-hero p{font-size:15px;line-height:1.75}
 .projects-page .article-intro{font-size:18px}
 .projects-page .article-context{font-size:12px;line-height:1.8}
 .projects-page .article-section h2{font-size:32px}
 .projects-grid{grid-template-columns:1fr;gap:22px}
 .project-card-copy{padding:23px}
 .project-card h2{font-size:30px}
 .project-card p{font-size:14px;line-height:1.8}
 .project-card-foot{font-size:11px}
 .catalog-results{align-items:flex-start;font-size:12px;line-height:1.8}
 .catalog-results>span{display:none}
 .search-row input{font-size:14px;padding:14px 12px}
 .search-row button{padding:12px 15px}
 .search-row button span{display:none}
 .next-articles{grid-template-columns:1fr}
 .next-articles>a{padding:23px}
 .projects-page .article-section .button{font-size:12px;line-height:1.6;white-space:normal}
 .catalog-empty{padding:24px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.projects-page .site-header,.article-sidebar,.request-section,.article-read-next,.projects-page footer{display:none}.article-hero{background:white;color:black;padding:20px 0}.article-hero p,.article-meta{color:black}.article-layout{display:block;padding:20px 0}.container{width:100%}.article-section{break-inside:avoid}.article-section .button{display:none}}


@media(min-width:768px) and (max-height:480px){.projects-page .sidebar-inner{position:static;display:block;max-height:none}.projects-page .sidebar-navigation{overflow:visible}}
