/* Shared type roles override the older page-specific type sizes. */
:root{
 --type-display:5rem;--type-page:4rem;--type-section:2.75rem;
 --type-title:1.5rem;--type-lead:1.125rem;--type-body:1.0625rem;
 --type-caption:.8125rem;--type-note:.875rem;--type-label:.75rem;--type-ui:.875rem;
 --type-heading-leading:1.2;--type-section-leading:1.25;
}
body{font-size:var(--type-body);line-height:1.75!important}
body :is(h1,h2,h3){font-family:Paperlogy,sans-serif;font-weight:500;letter-spacing:-.025em!important;white-space:normal;overflow-wrap:anywhere;word-break:keep-all}
body h1{font-size:var(--type-page)!important;line-height:var(--type-heading-leading)!important}
body h2{font-size:var(--type-section)!important;line-height:var(--type-section-leading)!important}
body h3{font-size:var(--type-title)!important;line-height:1.35!important}
body :is(p,dd,li,.practice-copy,.dialog-copy,.dialog-roles){font-size:var(--type-body)!important;line-height:1.75!important;white-space:normal;overflow-wrap:anywhere;word-break:keep-all}
body :is(.case-title>p,.case-section-heading>p,.brand-section-head>p,.case-narrative>p:first-child,
 .archive-heading>p,.object-story-heading>p,.opening-footer>p){font-size:var(--type-lead)!important;line-height:1.7!important}
body :is(figcaption,figcaption *,small,.home-header>p,.work-label>span,.home-brand-wall small,
 .object-teasers small,.scene-caption small,.finder-card small,.home-footer>div,.home-footer>div a,
 .home-footer>div span,.credentials p,.career-line>span,.project-dialog-top,.dialog-top,
 .ds-page-number,.ds-page-list span,.reel-review,.reel-review label,.reel-review output,
 .film-counter,.campaign-controls output,.process-controls output,.object-film-controls output,
 .ds-motion-controls output,.scene-image>span){font-size:var(--type-caption)!important;line-height:1.6!important;letter-spacing:0;white-space:normal;overflow-wrap:anywhere;word-break:keep-all}
body :is(.case-note,.object-disclosure,.home-nike-note,.campaign-disclosure,.ci-proof-source,
 .kr-source,.ds-source,.case-credits>div p,.ds-motion-controls>span,
 .work-image small,.reel-credit>span,.film-credit>span,.layer-caption small,.film-concept,
 .proof-copy small,.identity-story-label span,.ad-decision-copy>small,
 .object-method small,.film-status,.ui-tab-note,.playback-warning){font-size:var(--type-note)!important;line-height:1.65!important}
body :is(.brand-object-copy .object-disclosure,.ds-reader-copy .ds-source){font-size:var(--type-note)!important;line-height:1.65!important}
body #image-caption{font-size:var(--type-caption)!important;line-height:1.6!important}
body .project-dialog .dialog-note{font-size:var(--type-note)!important;line-height:1.65!important}
body .work-image small{word-break:keep-all;overflow-wrap:normal}
body :is(dt,.role-name,.ds-role-strip small,.ds-credit-grid small){font-size:var(--type-note)!important;line-height:1.6!important}
body :is(.section-index,.finder-eyebrow,.finder-number,.home-nike-copy>small,
 .objects-hero-title>p,.campaign-chapters small,.process-chapters button>span,
 .motion-chapters button>span,.object-decisions small,.nike-direction small,
 .responsibility-lines>b,.home-header sup){font-size:var(--type-label)!important;line-height:1.6!important;letter-spacing:.035em}
body :is(.work-label strong,.home-brand-wall a>span:first-child,.object-teasers strong,
 .scene-caption strong,.next-copy strong,.brand-lead a>span,.ds-role-strip strong,
 .campaign-current strong,.process-current strong,.campaign-chapters strong,
 .process-chapters strong,.motion-chapters strong,.surface-to-space strong,
 .brand-collection-link){font-family:Paperlogy,sans-serif;font-size:var(--type-title)!important;font-weight:500;line-height:1.35!important;letter-spacing:-.02em;white-space:normal;overflow-wrap:anywhere;word-break:keep-all}
body :is(.layer-caption h2,.reel-credit strong,.home-nike-copy h2,.object-film .film-type strong){font-size:var(--type-display)!important;line-height:1.12!important;letter-spacing:-.025em}
body :is(.film-credit,.objects-hero-title h2){font-size:var(--type-title)!important;line-height:1.3!important}
body .home-footer>a{font-size:var(--type-section)!important;line-height:1.25!important;white-space:normal}
body :is(button,input,summary,.line-link,.case-back,.case-nav,.film-file-link,.process-file,
 .responsibility-lines a,.home-header nav,.next-copy>span,.brand-object-detail>span,
 .home-proof-links a,.technical-home-link,.process-panorama>span,
 .ui-destination,.ui-row-cue,.ui-disclosure-cue,.finder-context a,.finder-foot a,
 .finder-modes button,.finder-browse summary,.finder-toggle,.finder-trail,
 .film-player #film-start>span){font-family:Pretendard,sans-serif;font-size:var(--type-ui)!important;font-weight:500;line-height:1.5!important;letter-spacing:0}
body :is(.ui-cue-short,.ui-cue-detail,.finder-toggle>span){font-size:var(--type-ui)!important;line-height:1.5!important}
body .film-player #film-start b{font-size:1rem!important}
body .film-player:has(#film-start:not([hidden])){display:grid;aspect-ratio:auto}
body .film-player:has(#film-start:not([hidden])) video{grid-area:1/1;align-self:center;height:auto}
body .film-player #film-start{position:relative;inset:auto;grid-area:1/1;display:grid;align-items:end;height:auto}
body .film-player #film-start>img{position:absolute;inset:0}
body .film-player #film-start>span{position:relative;inset:auto;z-index:1}
body :is(.ui-row-meta,.technical-home-link small,.technical-home-link>span:last-child,
 .brand-collection-link .ui-row-meta,.campaign-film-heading>span,
 .original-records summary>span,.campaign-archive summary>span,
 .object-film .film-type>span){font-size:var(--type-note)!important;line-height:1.65!important}
body :is(.finder-search-box input,input[type=search]){font-size:1rem!important;font-weight:400}
body :is(.finder-head h2,.finder-context h3){font-size:1.25rem!important;line-height:1.4!important;letter-spacing:-.02em}
body .finder-card strong{font-size:var(--type-ui)!important;line-height:1.5!important}
body :is(.finder-status,.finder-empty,.finder-search-box label,.finder-trail small){font-size:var(--type-ui)!important;line-height:1.6!important}
body .identity{font-size:1.5rem!important}
body .identity span{font-size:var(--type-lead)!important}
body .home-header{height:auto;min-height:94px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;row-gap:8px}
body .home-header nav{min-width:0;max-width:100%}
body .identity{min-width:0;max-width:100%;flex-wrap:wrap}
body :is(.case-title,.case-title>div,.case-section-heading,.case-section-heading>div,
 .brand-section-head,.brand-section-head>div,.object-story-heading,.object-story-heading>div,
 .object-method,.practice-body,.about-intro,.editorial-copy,.ds-reader-copy){min-width:0}
body :is(.case-title h1,.case-title>p,.brand-section-head h2,.brand-section-head>p,
 .case-section-heading h2,.case-section-heading>p,.object-story-heading h2,.object-story-heading>p,
 .practice h2,.about-intro h2,.home-nike-copy h2){white-space:normal!important;overflow-wrap:anywhere;max-width:100%}
body :is(.case-title,.brand-section-head,.case-section-heading,.object-story-heading,.practice-body){gap:20px}
body :is(.case-narrative,.practice-copy,.object-method>div:last-child){max-width:720px}
body :is(.case-section-heading,.brand-section-head,.object-story-heading){margin-bottom:32px}
body :is(.section-space,.case-section,.brand-section,.object-story){padding-top:96px}
body .work-label{height:auto;min-height:60px;align-items:flex-start;padding:10px 0;flex-wrap:wrap;gap:6px 12px}
body .work-label>span{white-space:normal;min-width:0}
body :is(.home-header nav a,.line-link,.case-back,.film-file-link,.process-file,.finder-panel button,
 .finder-panel summary,.finder-panel a,button:not(.image-button):not(.scene-link):not(#film-start):not(.close-dialog):not(.dialog-close)){
 min-height:44px;
}
body :is(.home-proof-links a,.brand-collection-link,.technical-home-link,.home-header nav,
 .campaign-controls,.process-controls,.object-film-controls,.ds-motion-controls,.opening-actions){flex-wrap:wrap}
body :is(.flow-tabs button,.object-film-controls button,.process-controls button,.campaign-controls button,
 .ds-motion-controls button,.opening-actions button,.object-section-heading .line-link){white-space:normal}
body .finder-toggle{overflow-wrap:normal;word-break:keep-all}
body .finder-toggle{padding-left:2px;padding-right:2px}
body .finder-toggle svg{flex-shrink:0}
body .finder-trail{max-width:calc(100vw - var(--finder-width) - 40px)}
body .finder-trail span{white-space:normal;overflow-wrap:anywhere;text-overflow:clip}
body :is(.object-story-images figcaption,.proof-pair figcaption,figcaption){flex-wrap:wrap;gap:8px 16px}
body.case-page figcaption>span:last-child{max-width:100%;text-align:left}
@media(min-width:701px) and (max-width:1199px){
 :root{--type-display:4rem;--type-page:3.25rem;--type-section:2.25rem}
}
@media(max-width:700px){
 :root{--type-display:2.75rem;--type-page:2.5rem;--type-section:2rem;--type-title:1.375rem;
  --type-lead:1rem;--type-body:1rem;--type-heading-leading:1.25;--type-section-leading:1.35}
 body :is(h1,h2,h3){letter-spacing:-.02em!important}
 body .identity{font-size:1.375rem!important}
 body :is(.case-title,.brand-section-head,.case-section-heading,.object-story-heading,.practice-body){gap:16px}
 body :is(.case-section-heading,.brand-section-head,.object-story-heading){margin-bottom:24px}
 body :is(.section-space,.case-section,.brand-section,.object-story){padding-top:56px}
 body .work-label{min-height:86px;display:flex;flex-direction:column;justify-content:flex-start;padding:10px 0;gap:6px}
 body .work-label>span{width:100%;align-items:flex-start}
 body .work-label>span{display:block;overflow-wrap:anywhere}
 body .work-label i{float:right;margin-left:.5em}
 body .work-stage{max-height:none;height:max(calc(100svh - 182px),44rem)}
 body .home-nike img{min-height:30rem}
 body :is(.campaign-chapters,.process-chapters,.motion-chapters){grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 body .home-proof-links{grid-template-columns:1fr}
 body .home-proof-links a{align-items:flex-start}
 body :is(.proof-tabs,.flow-tabs):has(> button:nth-child(3):last-child){flex-wrap:nowrap;gap:4px}
 body :is(.proof-tabs,.flow-tabs):has(> button:nth-child(3):last-child) > button{padding-left:4px;padding-right:4px;white-space:nowrap;flex-shrink:0}
 body .home-header{min-height:76px}
 body .home-header nav{gap:8px;flex-wrap:wrap;align-items:flex-end}
 body .home-header nav a{padding:10px 4px;display:inline-flex;align-items:flex-end}
 body .ds-page-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 body .finder-trail{max-width:calc(100vw - 90px)}
 body .finder-rail{width:60px;height:64px}
 body .finder-toggle{width:60px;min-height:64px}
 body .object-film .film-type{max-width:90%}
}
