/* Current Kado presentation layer: one type scale, shared navigation and readable details. */
:root{
  --type-body:16px;--type-secondary:14px;--type-label:13px;--type-caption:12px;
  --type-nav:14px;--type-h1:clamp(36px,4.4vw,56px);--type-page-h1:clamp(34px,4vw,48px);
  --type-h2:32px;--type-h3:24px;--type-card:22px;--reading-line:1.7;
}
html{scroll-behavior:auto}
body{font-size:var(--type-body);line-height:var(--reading-line)}
h1,h2,h3{font-family:Montserrat,Arial,sans-serif}
h1{font-size:var(--type-h1);font-weight:800;line-height:1.1;letter-spacing:-.025em}
h2{font-weight:700;line-height:1.2;letter-spacing:-.02em}
h3{font-weight:700;line-height:1.3}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.skip-link{position:absolute;left:5%;top:-100px;background:white;color:var(--navy);padding:12px 20px;z-index:20}.skip-link:focus{top:8px}
.preview-strip{justify-content:center;text-align:center;letter-spacing:.1px;font-size:var(--type-caption);line-height:1.5;min-height:30px;padding-block:6px}
.preview-strip>span{font-size:inherit;max-width:none!important;text-align:center!important}
.circle-bar{padding-block:7px;border-bottom:0;min-height:36px;font-size:var(--type-label)}.circle-bar a{display:inline-flex;align-items:center;min-height:32px}
.site-header{padding-block:16px}.site-header nav{gap:24px;font-size:var(--type-nav);font-weight:600}
.site-header nav [aria-current=page]{color:var(--gold-dark);border-bottom:1px solid var(--gold);padding-block:8px}
.site-header nav>a:not(.button){min-height:44px;display:inline-flex;align-items:center;font-size:var(--type-nav)}
.button{font-size:var(--type-nav);font-weight:650;min-height:48px;line-height:1.5}
.site-header .button.small,.site-header nav .button.small{min-height:44px;font-size:var(--type-label);padding:11px 16px}
.text-button,.service-path .text-button,.project-copy .text-button,.quiet-link{font-size:var(--type-nav);font-weight:650;line-height:1.5;min-height:44px}
.quiet-link{width:fit-content;max-width:100%;display:inline-flex;align-items:center}
.section{padding-block:55px}.hero{padding-block:20px 45px}.hero-copy{padding:10px 0}.hero-image{min-height:440px}
.eyebrow{font-size:var(--type-caption);line-height:1.5;letter-spacing:1.3px}
.section-heading h2,.portfolio .section-heading h2,.inquiry-intro h2,.about-section h2,.about-contact h2,.profile-cta h2,.case-gallery>h2,.related-projects>h2{font-size:var(--type-h2);font-weight:700;line-height:1.2;letter-spacing:-.02em}
.hero-description,.section-heading>p,.service-path p,.project-copy>p:not(.project-location),.inquiry-intro>p:not(.eyebrow),.profile-intro>p:not(.eyebrow),.library-copy>p:not(.case-location),.profile-cta p:not(.eyebrow),.case-summary,.case-narrative p,.gallery-intro,.about-intro p,.history-section p,.leader-card p:last-child,.section-intro,.capability-list dd,.office-list article>p:not(.office-city),.about-contact p{font-size:var(--type-body);line-height:var(--reading-line)}
.service-path{border-top:1px solid var(--line);border-radius:12px;padding:28px}.service-path h3{font-size:var(--type-h3);line-height:1.3}
.service-path li{font-size:var(--type-secondary);line-height:1.7;padding:8px 0}
.project-image{aspect-ratio:4/3.5}.project-copy h3,.library-copy h2{font-size:var(--type-card);font-weight:700;line-height:1.3;letter-spacing:-.02em}
.project-location,.library-copy .case-location{font-size:var(--type-caption);line-height:1.6;letter-spacing:0}
.project-location a,.library-copy .case-location a,.archive-note a{ text-decoration:underline;text-underline-offset:3px}
.project-copy h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.portfolio-note,.archive-note,.form-explanation,.inquiry-intro .preview-note{font-size:var(--type-caption)!important;line-height:1.7}
.portfolio-library-link{font-size:var(--type-nav)}
.hero-image figcaption span,.hero-image figcaption small{font-size:var(--type-caption);line-height:1.6;letter-spacing:.3px}
.profile-intro{padding-block:30px 35px}.profile-intro h1,.about-intro h1,.case-hero h1{font-size:var(--type-page-h1);font-weight:800;line-height:1.12;letter-spacing:-.025em}
.profile-intro h1{margin-bottom:18px}.profile-intro>p:not(.eyebrow){max-width:650px}
.project-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:23px;margin-bottom:27px}
.project-toolbar label{display:flex;flex-direction:column;gap:7px;font-size:var(--type-label);font-weight:650;max-width:250px;width:100%}
.project-toolbar select{min-height:44px;font-size:var(--type-body)}.project-toolbar>p{font-size:var(--type-label);color:var(--muted);margin:0 0 10px}
.library-copy .case-location{color:var(--muted)}.library-grid{row-gap:35px}
.profile-cta{padding-block:32px}
.case-breadcrumb,.case-breadcrumb>a:last-child{font-size:var(--type-label);line-height:1.6}
.case-breadcrumb>a:last-child{color:var(--muted);text-decoration:none;border-left:1px solid var(--line);padding-left:14px}
.case-hero{padding-bottom:35px;gap:40px}.case-hero .case-location{font-size:var(--type-caption);line-height:1.6}
.case-hero .eyebrow{font-size:var(--type-label);letter-spacing:0;font-weight:600;margin-bottom:15px}
.case-body{gap:45px}.case-facts{border-top:1px solid var(--line);padding:24px}.case-facts>h2{font-size:var(--type-card);line-height:1.3}
.case-facts dt{font-size:var(--type-label);text-transform:none;letter-spacing:0;color:var(--muted);font-weight:600;line-height:1.5}
.case-facts dd{font-size:var(--type-secondary);line-height:1.7}.case-role{font-size:var(--type-secondary);line-height:1.7}.case-role>strong{font-size:var(--type-label);font-weight:650;line-height:1.5}
.case-narrative h2{font-size:var(--type-h3);font-weight:700;line-height:1.3;letter-spacing:-.02em}
.gallery-intro{max-width:72ch;color:var(--muted);margin-top:-5px;margin-bottom:24px}
.case-hero-image>figcaption,.gallery-item figcaption,.uniform-concept figcaption,.about-intro figcaption,.about-provenance{font-size:var(--type-caption);line-height:1.7}
.gallery-item figcaption{display:block}.gallery-grid{align-items:start}.source-details{font-size:var(--type-caption);line-height:1.7}
.source-details summary{font-size:var(--type-label);min-height:44px;display:list-item;padding:8px 0;line-height:1.5}.source-details ul{overflow-wrap:anywhere}
.related-projects a span{font-size:var(--type-caption);line-height:1.6}.related-projects a strong{font-size:var(--type-card);line-height:1.35}.related-projects a small{display:none}
.about-intro h1{margin-bottom:23px}.about-section h2{margin-bottom:27px}
.leader-card h3,.office-list h3{font-size:var(--type-card);font-weight:700;line-height:1.3}.leader-card .leader-role,.office-list .office-city,.department-card>span,.org-manager>span{font-size:var(--type-label);line-height:1.5}
.org-manager h3{font-size:20px;line-height:1.3}.department-card h3{font-size:18px;line-height:1.35}
.team-details summary{font-size:var(--type-nav);line-height:1.5;min-height:44px}.capability-list dt{font-size:var(--type-card);line-height:1.3}
.office-list a,.history-section .quiet-link{font-size:var(--type-nav);line-height:1.5}
.project-form{padding:27px}.form-heading h3{font-size:var(--type-card);line-height:1.3}.form-heading>span{font-size:var(--type-caption);line-height:1.5}
form label,.path-choice legend,.path-choice label{font-size:var(--type-label);line-height:1.5}.path-choice label{min-height:44px}
input,select,textarea{font-size:var(--type-body);line-height:1.5}
input::placeholder,textarea::placeholder{font-size:var(--type-secondary);color:#62655f;opacity:1}
.extra-details{border-block:1px solid var(--line);padding:4px 0;margin:4px 0 20px}.extra-details>summary{font-size:var(--type-label);font-weight:650;cursor:pointer;min-height:48px;padding:12px 0;line-height:1.5}.extra-details[open]>summary{margin-bottom:10px}
.inquiry-review h4{font-size:20px;line-height:1.3}.inquiry-review dl{font-size:var(--type-label);line-height:1.7}.inquiry-review>p{font-size:var(--type-caption);line-height:1.7}
.footer-inner{gap:22px;flex-wrap:wrap;padding-block:25px}.office-flags{display:flex;align-items:center;gap:21px;flex-wrap:wrap}
.office-flags a{display:inline-flex;align-items:center;gap:8px;font-size:var(--type-label);min-height:44px;text-decoration:none;line-height:1.5}.office-flags a:hover span{text-decoration:underline;text-underline-offset:4px}
.office-flags img{display:block;width:28px;height:19px;object-fit:contain;border:0;border-radius:0}
.host-link{font-size:var(--type-label);color:var(--muted);min-height:44px;display:inline-flex;align-items:center;gap:10px;line-height:1.5}
.host-link .circle-host-mark{display:block;width:28px;height:28px;flex:0 0 28px;object-fit:contain}.footer-brand>img{width:135px}
.uniform-concept{border-top:1px solid var(--line);padding-block:30px 50px}.uniform-concept>h2{font-size:var(--type-h3);margin-bottom:13px}.uniform-concept>p{font-size:var(--type-body);line-height:1.7;color:var(--muted);max-width:700px}
.uniform-controls{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.uniform-controls button{background:none;border:1px solid var(--line);border-radius:8px;min-height:44px;padding:10px 17px;font-size:var(--type-label)}
.uniform-controls button[aria-pressed=true]{background:var(--ink);color:#fff}.uniform-concept figure{margin:0;max-width:816px}.uniform-concept figure img{width:100%;height:auto;border-radius:8px}
.uniform-concept figcaption{color:var(--muted);margin-top:12px}.uniform-figure .uniform-controls{margin:0 0 12px;gap:6px}.uniform-figure .uniform-controls button{padding:9px 13px}.uniform-figure>a{margin-top:0}
@media(max-width:850px){.case-body{grid-template-columns:240px 1fr;gap:25px}}
@media(max-width:700px){
 :root{--type-nav:13px;--type-h1:36px;--type-page-h1:34px;--type-h2:28px;--type-h3:22px;--type-card:22px}
 .site-header{gap:12px;flex-wrap:wrap}.site-header nav{width:100%;gap:16px;justify-content:flex-start;flex-wrap:nowrap}
 .site-header nav>a:not(.button){display:inline-flex;min-height:44px}.site-header nav .button.small{font-size:var(--type-label);margin-left:auto;padding:10px 13px}
 .wrap{width:90%}.hero{gap:22px;padding-block:10px 35px}.hero h1{font-size:var(--type-h1)}.hero-image{min-height:0;width:100%;aspect-ratio:5/4;max-height:none}.hero-image>img{min-width:0}
 .section{padding-block:42px}.service-path{padding:24px}.project-image{aspect-ratio:4/3}
 .footer-inner{display:block}.footer-brand{margin-bottom:15px}.office-flags{gap:14px;margin-bottom:8px}.office-flags a{gap:6px}.office-flags img{width:25px;height:17px}
 .profile-intro{padding-block:22px 25px}.project-toolbar{align-items:end;margin-bottom:23px;padding-top:20px}.project-toolbar label{max-width:210px}
 .library-grid{gap:28px}.library-photo{height:285px}.case-hero{gap:24px}.case-hero-image{width:100%;min-width:0;min-height:0}
 .case-body{grid-template-columns:1fr;gap:28px}.case-facts dl{grid-template-columns:110px 1fr;gap:9px 15px}.case-facts dt,.case-facts dd{margin:0}
 .case-gallery{padding-bottom:35px}.profile-cta>.wrap{display:block}.profile-cta .button{margin-top:18px}.related-projects{padding-block:30px}
 .project-form{padding:21px}.form-row{grid-template-columns:1fr;gap:0}.path-choice{gap:4px}.uniform-concept{padding-block:25px 35px}
}
@media(max-width:360px){.site-header nav{gap:12px}.site-header nav .button.small{padding:10px 11px}.office-flags{gap:10px}.office-flags img{width:22px;height:15px}.project-toolbar label{max-width:185px}}

.hero-actions{display:flex;gap:12px 20px;align-items:center;flex-wrap:wrap}.hero-actions>.quiet-link{margin:0}
