/* September 2026 portfolio update. Shared by home, directory and brand pages. */
.discipline-section,.media-category{scroll-margin-top:110px}
.discipline-intro{color:#999;max-width:660px;margin:24px 0 0;font-size:13px;line-height:1.8}
.portfolio-disciplines{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 44px}
.portfolio-disciplines a{display:flex;gap:14px;align-items:center;border:1px solid #343434;border-radius:50px;padding:16px 21px;color:var(--lime);font:800 10px var(--font-geist-mono),monospace;transition:background .2s,border-color .2s}
.portfolio-disciplines a span{color:#eaeae4;font-size:11px}
.portfolio-disciplines a:hover,.portfolio-disciplines a:focus-visible{background:#202719;border-color:var(--lime)}
.discipline-navigation-shell{padding:25px max(40px,calc(50vw - 750px)) 0}
.discipline-navigation-shell .portfolio-disciplines{margin:0}
.all-work-hero{min-height:620px;padding-bottom:60px}
.photo-video{background:#0b0b0b}
.lens-project-grid .complete-project-media{aspect-ratio:4/3}
.lens-project-grid .complete-project-copy h3{font-size:clamp(30px,2.6vw,43px);margin:20px 0 13px;line-height:.95}
.lens-project-grid .complete-project-copy{min-height:145px}
.complete-project-card:focus-visible,.website-preview-card:focus-visible,.brand-card:focus-visible{outline:2px solid var(--lime);outline-offset:5px}
.complete-project-card:focus-visible .complete-project-media>i,.brand-card:focus-visible .brand-media>i{opacity:1;transform:none}
.website-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.website-preview-card{display:block;min-width:0;overflow:hidden;background:#101010;border:1px solid #303030;border-radius:12px;transition:border-color .25s,transform .25s}
.website-preview-card:hover{border-color:#787878;transform:translateY(-4px)}
.website-browser-bar{display:flex;align-items:center;gap:15px;padding:14px 17px;background:#191919;border-bottom:1px solid #303030}
.website-browser-bar>span{display:flex;gap:5px;flex-shrink:0}
.website-browser-bar i{display:block;width:6px;height:6px;background:#666;border-radius:50%}
.website-browser-bar small{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aaa;font:500 9px var(--font-geist-mono),monospace}
.website-browser-bar>.ui-icon{color:var(--lime);width:14px;height:14px}
.website-preview-image{aspect-ratio:16/9;background:#161616;overflow:hidden}
.website-preview-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}
.website-preview-card:hover .website-preview-image img{transform:scale(1.025)}
.website-preview-copy{padding:26px;display:flex;justify-content:space-between;align-items:end;gap:18px}
.website-preview-copy p{color:var(--lime);font:700 9px/1.5 var(--font-geist-mono),monospace;text-transform:uppercase;margin:0 0 12px}
.website-preview-copy h3{font-size:clamp(31px,3vw,48px);line-height:1;margin:0}
.website-preview-copy>span{display:flex;align-items:center;gap:10px;color:#b8b8b4;white-space:nowrap;font-size:10px}
.media-category+.media-category{margin-top:70px}
.media-category>h3{font-size:clamp(28px,3.5vw,48px);display:flex;align-items:center;gap:20px;border-top:1px solid #303030;padding-top:24px;margin:0 0 28px}
.media-category>h3 small{font:600 10px var(--font-geist-mono),monospace;color:#909090}
.media-category .media-grid figure:nth-child(2n){margin-top:0}
/* Use the circle's area: outer logos sit near the rim, not in its middle. */
.clients .client-logo-orbit{width:min(860px,100%);margin:14px auto 0}
.clients .client-orbit-center{width:clamp(112px,14vw,140px)}
.clients .client-orbit-center strong{font-size:clamp(42px,5vw,57px)}
.clients .client-logo-node{width:clamp(48px,6vw,70px);height:clamp(36px,4.8vw,54px)}
.clients .client-logo-node img{max-width:100%;max-height:100%;object-fit:contain}
.honor-list img[alt*="Sveston"],.honor-list img[src*="client-31"]{filter:brightness(0) invert(1)!important;opacity:1}
/* Touch screens get a readable, non-overlapping logo gallery, not a squeezed orbit. */
@media(max-width:760px){
  .clients .client-logo-orbit{width:100%;aspect-ratio:auto;border:0;border-radius:0;background:none;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 14px;overflow:visible}
  .clients .client-logo-orbit:before,.clients .client-logo-orbit:after{display:none}
  .clients .client-orbit-center{grid-column:1/-1;position:static;transform:none;aspect-ratio:auto;width:auto;border:0;border-radius:0;box-shadow:none;background:none;padding:0 0 24px;border-bottom:1px solid #292929;margin-bottom:2px;display:flex;justify-content:center;align-items:center;gap:18px}
  .clients .client-orbit-center strong{font-size:48px}
  .clients .client-orbit-center span{margin:0;font-size:11px}
  .clients .client-orbit-center small{display:none}
  .clients .client-logo-node{position:relative;inset:auto;transform:none!important;width:100%;height:64px;will-change:auto;display:flex;align-items:center;justify-content:center;padding:5px;margin:0}
  .clients .client-logo-node img{width:100%;height:100%;max-width:72px;max-height:54px;object-fit:contain;filter:none;opacity:1}
  .clients .client-logo-node figcaption{display:none}
  .clients .client-logo-node.logo-31 img{filter:brightness(0) invert(1)!important}
  .portfolio-disciplines{gap:9px;margin-bottom:30px}
  .portfolio-disciplines a{padding:13px 16px;gap:10px}
  .portfolio-disciplines a span{font-size:10px}
  .discipline-navigation-shell{padding:18px 18px 0}
  .discipline-intro{font-size:12px;margin-top:20px}
  .website-preview-grid{grid-template-columns:1fr;gap:22px}
  .website-preview-copy{padding:22px 18px;align-items:start;flex-direction:column;gap:18px}
  .website-preview-copy h3{font-size:37px}
  .website-preview-copy>span{font-size:11px}
  .all-work-hero{min-height:0;padding-top:105px;padding-bottom:42px}
  .all-work-hero>h1{font-size:clamp(54px,12vw,80px);margin:42px 0}
  .all-work-summary{gap:22px}
  .lens-project-grid .complete-project-copy{min-height:130px}
  .complete-project-media>i{opacity:1;transform:none}
}
@media(prefers-reduced-motion:reduce){.website-preview-card,.website-preview-image img{transition:none}.website-preview-card:hover,.website-preview-card:hover .website-preview-image img{transform:none}}

/* October 2026: readable supporting copy without enlarging display headings. */
.site-header nav a.search-link{display:inline-flex;gap:8px;align-items:center}
.site-header nav a.search-link:focus-visible{outline:2px solid var(--lime);outline-offset:6px}
.ai-generations{background:radial-gradient(ellipse at 90% 0,#aeff0015,transparent 50%),#10120c;border-top:1px solid #566b2c;border-bottom:1px solid #566b2c}
.ai-label{display:inline-block;color:var(--lime);border:1px solid #536d22;border-radius:40px;font:700 11px/1.5 var(--font-geist-mono),monospace;letter-spacing:.09em;padding:10px 15px;margin:0 0 24px}
.ai-nav-link{border-color:#718c36!important;background:#aeff0010}
.ai-film-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.ai-film-card{display:block;background:#101010;border:1px solid #363e29;border-radius:12px;overflow:hidden;transition:border-color .2s}
.ai-film-card:hover{border-color:var(--lime)}
.ai-film-cover{position:relative;aspect-ratio:16/10;overflow:hidden;background:#080808}
.ai-film-cover img{width:100%;height:100%;object-fit:contain}
.ai-badge{display:inline-block;font:800 11px/1.4 var(--font-geist-mono),monospace;background:var(--lime);color:#101400;padding:8px 12px;border-radius:30px;letter-spacing:.07em}
.ai-film-cover .ai-badge{position:absolute;top:16px;left:16px}
.ai-film-copy{padding:28px}.ai-film-copy p{color:#b2b8a7;font-size:13px;margin-bottom:12px}.ai-film-copy h3{font-size:clamp(30px,3vw,46px);line-height:1.1;margin-bottom:18px}.ai-film-copy>span{font-size:13px;color:var(--lime)}
.collection-hero{padding-top:160px;padding-bottom:60px}.collection-hero h1{font-size:clamp(72px,10vw,150px);line-height:.9;margin:40px 0}.collection-hero>p:last-of-type{max-width:760px;color:#b3b3b3;font-size:16px;line-height:1.8}
.ai-collection{padding-top:0}.ai-feature{scroll-margin-top:110px;padding:50px 0;border-top:1px solid #343b2a;display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:50px;align-items:start}.ai-feature-heading h2{font-size:clamp(36px,4.5vw,64px);line-height:1;margin:20px 0}.ai-feature-heading p{font-size:15px;line-height:1.7;color:#b3b3b3;margin-top:16px}.ai-feature video{width:100%;max-height:730px;background:#080808}
.collection-footer{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #333;font-size:14px;color:var(--lime)}
.portfolio-search-form{margin:40px 0 24px;max-width:1000px}.portfolio-search-form>label{display:block;font-size:14px;margin-bottom:12px;color:#b3b3b3}.search-input-row{display:flex;border:1px solid #626c50;border-radius:12px;background:#121410;overflow:hidden}.search-input-row:focus-within{outline:2px solid var(--lime);outline-offset:4px}.search-input-row input{min-width:0;flex:1;padding:21px;color:var(--paper);font-size:16px;outline:none}.search-input-row button{display:flex;align-items:center;gap:10px;background:var(--lime);color:#111;padding:18px 24px;font-size:14px;font-weight:800;cursor:pointer}.search-filters{display:flex;flex-wrap:wrap;gap:12px;border:0;padding:0}.search-filters legend{font-size:12px;color:#999;margin-bottom:12px}.search-filters label{position:relative;cursor:pointer}.search-filters input{position:absolute;opacity:0}.search-filters span{display:block;border:1px solid #444;border-radius:40px;padding:12px 20px;font-size:13px}.search-filters input:checked+span{border-color:var(--lime);color:var(--lime);background:#aeff0010}.search-filters input:focus-visible+span{outline:2px solid #fff;outline-offset:4px}.search-section{padding-top:0}.search-status{color:#b3b3b3;font-size:14px;margin-bottom:26px}.search-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.search-result{border:1px solid #303030;border-radius:10px;overflow:hidden;background:#111;min-width:0}.search-preview,.search-result>video{display:block;width:100%;height:320px;background:#090909;object-fit:contain}.search-preview img{width:100%;height:100%;object-fit:contain}.search-result-copy{padding:22px}.search-type{font-size:11px;color:var(--lime);margin-bottom:13px}.search-result h2{font-size:30px;line-height:1.1;margin-bottom:20px}.search-more{margin:30px auto 0;cursor:pointer}.search-more[hidden]{display:none}.media-grid figcaption strong{font:inherit;text-align:right;max-width:80%}.media-grid figure{scroll-margin-top:110px}
@media(max-width:1000px){.search-results{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-feature{grid-template-columns:1fr}}
@media(max-width:760px){.site-header nav{gap:10px}.site-header nav a.search-link{display:inline-flex;padding:10px}.search-link span{display:none}.site-header .hire-button{padding:0 13px;gap:9px}.ai-film-grid,.search-results{grid-template-columns:1fr}.collection-hero{padding-top:120px}.collection-hero h1{font-size:64px}.search-input-row{flex-wrap:wrap}.search-input-row input{flex-basis:100%;padding:18px}.search-input-row button{width:100%;justify-content:center;padding:14px}.ai-feature{gap:26px}.ai-film-copy{padding:22px}.collection-footer{flex-direction:column}.search-preview,.search-result>video{height:380px}}
.hero-foot>p,.overview-copy>p,.experience-role p,.service-list p,.case-heading>p:last-child,.all-work-summary>p,.project-hero>div>p:last-child,.discipline-intro{font-size:16px;line-height:1.8;color:#b3b3b3}
.brand-copy small,.complete-project-copy small,.capability-list small{font-size:14px;line-height:1.7;color:#aaa}
.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.1em}
.brand-copy p,.complete-project-copy p,.website-preview-copy p{font-size:12px;line-height:1.6}
.fact-row span,.case-metrics span,.history-row span,.skill-grid small,.honor-list small,.honor-list p,.all-work-summary span,.project-next a>span,.all-work-cta span,.project-gallery-head>span,.project-hero aside>span,.media-category>h3 small{font-size:12px;line-height:1.6}
.skill-grid small,.honor-list small,.honor-list p,.all-work-summary span,.project-gallery-head>span,.project-next a>span,.all-work-cta span{color:#aaa}
.skill-grid strong,.capability-list strong,.project-hero aside>strong,.project-hero ul{font-size:14px;line-height:1.6}
.project-hero ul{color:#aaa}
.case-details,.data-note,.tool-note,.review-grid footer,.contact footer{font-size:12px;line-height:1.7;color:#aaa}
.hero-foot span{font-size:11px;line-height:1.6;color:#aaa}
.site-header nav,.hire-button,.pill-button,.text-link{font-size:12px}
.portfolio-disciplines a,.portfolio-disciplines a span{font-size:12px;line-height:1.5}
.website-browser-bar small{font-size:12px}
.website-preview-copy>span{font-size:13px}
.media-grid figcaption{font-size:13px;line-height:1.6;gap:16px;color:#b3b3b3;overflow-wrap:anywhere}
.document-preview strong{font-size:13px}.document-preview small{font-size:11px}
.brand-media>i,.complete-project-media>i{font-size:11px;line-height:1.5}
.complete-project-copy{min-height:170px}
.project-gallery-head{grid-template-columns:.45fr 1.2fr minmax(130px,auto)}
.media-grid .sana-film video{aspect-ratio:9/16;max-height:780px;object-fit:contain;background:#080808}
.media-grid .sana-film:nth-child(2n){margin-top:0}
.project-hero h1 em{font-style:normal;color:var(--paper)}
@media(max-width:760px){
  .hero-foot>p,.overview-copy>p,.experience-role p,.service-list p,.case-heading>p:last-child,.all-work-summary>p,.project-hero>div>p:last-child,.discipline-intro{font-size:15px}
  .project-gallery-head{grid-template-columns:1fr;gap:22px}
  .portfolio-disciplines a{max-width:100%}
  .portfolio-disciplines a span{font-size:12px}
  .skill-grid article{gap:12px;min-width:0;flex-wrap:wrap}
  .skill-grid strong{overflow-wrap:anywhere}
  .project-hero aside{padding:25px}
  .media-grid figcaption{padding:16px}
  .honor-list article{min-width:0}
  .contact footer{overflow-wrap:anywhere}
}
