.project-folder-trigger{width:100%;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}
.project-folder-trigger .project-image,.project-name,.project-subtitle{display:block}
.work-view .project-name{font-size:20px;line-height:1.2;letter-spacing:-.025em;font-weight:500}
.project-subtitle{font-size:14px;line-height:1.4;margin-top:6px;color:#b9c1bb}
.project-folder-mark{grid-row:1/3;grid-column:2;width:18px;color:#99a49c}
.project-folder-mark svg{width:100%;display:block}
.folder-open{overflow:hidden}
.project-folder{position:fixed;inset:0;width:min(660px,calc(100% - 40px));max-height:calc(100svh - 48px);margin:auto;padding:0;border:1px solid #ffffff22;border-radius:26px;color:#f0f1ef;background:radial-gradient(ellipse at 10% 0,#27352e5c,transparent 52%),linear-gradient(145deg,#171b19,#0d0f0e 70%);box-shadow:0 45px 140px #000b,0 1px 0 #ffffff12 inset;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#59615b transparent}
.project-folder::backdrop{background:#020504b8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.folder-shell{padding:30px}
.folder-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.folder-kicker{font-size:12px;letter-spacing:.14em;color:#9ba69e;margin-bottom:10px}
.folder-heading h2{font-size:32px;line-height:1.12;font-weight:500;letter-spacing:-.04em}
.folder-close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:10px;border:1px solid #ffffff14;border-radius:50%;background:#ffffff05;color:#d4dbd6;cursor:pointer;transition:background .35s,border-color .35s}
.folder-close svg{width:18px;height:18px}
.folder-close:hover{background:#ffffff10;border-color:#ffffff36}
.folder-credits{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:12px;margin:24px 0 26px;padding:0 0 23px;border-bottom:1px solid #ffffff14}
.folder-credits dt{font-size:12px;color:#8e9a92;line-height:1.4;margin-bottom:5px}
.folder-credits dd{margin:0;font-size:14px;line-height:1.4}
.folder-films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.folder-film{min-width:0;padding:0;border:0;background:none;color:inherit;text-align:left;cursor:pointer;border-radius:15px}
.folder-cover{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;border-radius:15px;background:#060807;border:1px solid #ffffff14;isolation:isolate}
.folder-cover img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1),filter .7s}
.folder-cover::after{position:absolute;content:'';inset:0;pointer-events:none;background:linear-gradient(180deg,#0000 30%,#0001 60%,#0007),radial-gradient(circle at var(--film-x,50%) var(--film-y,50%),#ffffff29,transparent 70%);opacity:.65;transition:opacity .6s}
.folder-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid #ffffff55;background:linear-gradient(135deg,#ffffff26,#ffffff08);backdrop-filter:blur(14px);box-shadow:0 6px 24px #0003;transition:background .6s,box-shadow .6s}
.folder-play svg{width:23px;height:23px}
.folder-film:hover .folder-cover img,.folder-film:focus-visible .folder-cover img{transform:scale(1.025);filter:brightness(.82)}
.folder-film:hover .folder-play{background:#ffffff2e;box-shadow:0 0 30px #ffffff12}
.folder-film-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:12px;font-size:14px;line-height:1.4}
.folder-film-label>span+span{font-size:12px;color:#9ca79f;text-align:right}
.folder-back,.folder-external{display:block;width:fit-content;padding:8px 0;font-size:14px;color:#b6c1b9;border:0;background:none;cursor:pointer}
.folder-back{margin:0 0 12px}
.folder-back:hover,.folder-external:hover{color:#fff}
.folder-embed{width:min(100%,360px);height:min(620px,64svh);min-height:330px;margin:auto;overflow:hidden;border-radius:16px;background:#fff}
.folder-embed iframe{display:block;width:100%;height:100%;border:0;background:#fff}
.folder-external{margin:13px auto 0;text-decoration:underline;text-decoration-color:#ffffff30;text-underline-offset:5px}
.project-folder.is-playing .folder-credits,.project-folder.is-playing .folder-kicker{display:none}
.project-folder.is-playing .folder-heading{align-items:center;margin-bottom:10px}
.project-folder.is-playing .folder-heading h2{font-size:26px}
.project-folder.is-playing .folder-embed{height:min(620px,calc(100svh - 250px));min-height:260px}
@media(max-width:700px){.work-view .project-name{font-size:17px}.project-subtitle{font-size:13px}.project-folder-mark{display:none}.project-folder{width:calc(100% - 24px);max-height:calc(100svh - 24px);border-radius:22px}.folder-shell{padding:22px 18px}.folder-heading h2{font-size:28px}.folder-kicker{font-size:12px}.folder-credits{margin:21px 0;padding-bottom:19px;gap:8px}.folder-credits dd{font-size:13px}.folder-films{gap:12px}.folder-cover{border-radius:12px}.folder-film-label{display:block;font-size:14px}.folder-film-label>span+span{display:block;margin-top:4px;text-align:left}.folder-play{width:40px;height:40px}.folder-embed{height:min(570px,62svh)}}
@media(prefers-reduced-motion:reduce){.folder-cover img,.folder-play{transition:none}.folder-film:hover .folder-cover img{transform:none}}

/* Single films retain the same folder, with a native landscape screen. */
.folder-subtitle{font-size:14px;line-height:1.4;color:#a9b4ac;margin-top:7px}
.folder-credits-2{grid-template-columns:1fr 1fr}
.folder-credits-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.folder-credits>div{min-width:0}
#red-bull-ring-f4-folder .folder-film:first-child .folder-cover img{object-position:50% 30%}
.work-view .project-link[aria-controls="red-bull-ring-f4-folder"] .project-image>img{object-position:50% 54%}
@media(max-width:700px){.folder-credits-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}}
.project-folder-single .folder-films{grid-template-columns:1fr}
.project-folder-single .folder-cover{aspect-ratio:16/9}
.project-folder.is-youtube .folder-credits,.project-folder.is-linkedin .folder-credits{display:grid;margin-block:18px 16px;padding-bottom:17px}
.project-folder.is-youtube .folder-embed,.project-folder.is-linkedin .folder-embed{width:100%;height:auto;min-height:0;aspect-ratio:16/9;background:#000}
.project-folder.is-youtube .folder-embed iframe,.project-folder.is-linkedin .folder-embed iframe{background:#000}
.project-folder.is-youtube .folder-back,.project-folder.is-linkedin .folder-back{margin-bottom:8px}

/* Photography shares the project folder and opens into a quiet contact sheet. */
.project-folder-gallery{transition:width .48s cubic-bezier(.22,1,.36,1)}
.project-folder-gallery.is-gallery{width:min(940px,calc(100% - 48px))}
.folder-tabs{display:flex;width:fit-content;gap:4px;padding:4px;margin:0 0 24px;border:1px solid #ffffff16;border-radius:100px;background:#060a0780;box-shadow:0 1px 0 #ffffff08 inset}
.folder-tabs button{display:flex;align-items:center;gap:11px;padding:10px 17px;border:1px solid transparent;border-radius:100px;background:transparent;color:#9ba69f;font:inherit;font-size:14px;cursor:pointer;transition:color .35s,background .35s,box-shadow .35s}
.folder-tabs button span{font-size:12px;color:#8f9c93;font-variant-numeric:tabular-nums}
.folder-tabs button[aria-selected=true]{background:linear-gradient(125deg,#ffffff1c,#ffffff07);border-color:#ffffff17;color:#f5f7f4;box-shadow:0 3px 12px #0002}
.folder-tabs button[aria-selected=true] span{color:#c7d4ca}
.folder-tabs button:hover{color:#fff}
.folder-tabs button:focus-visible,.gallery-photo:focus-visible,.photo-navigation button:focus-visible,.photo-back:focus-visible{outline:2px solid #c7d8cd;outline-offset:4px}
.folder-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.photo-album-tabs{display:flex;gap:28px;margin:0 0 22px;border-bottom:1px solid #ffffff16}
.photo-album-tabs button{position:relative;display:flex;align-items:baseline;gap:10px;padding:0 0 15px;border:0;background:none;color:#95a198;font:inherit;font-size:15px;cursor:pointer;transition:color .3s}
.photo-album-tabs button::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;border-radius:2px;background:#dce9df;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.22,1,.36,1)}
.photo-album-tabs button[aria-selected=true]{color:#f4f7f4}
.photo-album-tabs button[aria-selected=true]::after{transform:scaleX(1)}
.photo-album-tabs button:hover{color:#fff}
.photo-album-tabs button:focus-visible{outline:2px solid #c7d8cd;outline-offset:5px;border-radius:2px}
.photo-album-count{font-size:11px;letter-spacing:.025em;color:#9bab9f;font-variant-numeric:tabular-nums}
.photo-album-empty{min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;border:1px solid #ffffff0e;border-radius:14px;background:linear-gradient(145deg,#ffffff03,transparent);text-align:center}
.photo-album-empty-mark{display:block;width:26px;margin-bottom:18px;color:#879b8d}
.photo-album-empty h3{font-size:19px;font-weight:400;letter-spacing:-.02em}
.photo-album-empty p{margin-top:9px;color:#96a49b;font-size:14px}
.gallery-photo{position:relative;display:block;min-width:0;aspect-ratio:2/3;padding:0;overflow:hidden;border:1px solid #ffffff15;border-radius:14px;background:#090c0a;cursor:zoom-in;isolation:isolate}
.gallery-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.22,1,.36,1),filter .6s}
.gallery-photo::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--film-x,50%) var(--film-y,50%),#ffffff2a,transparent 60%);opacity:0;transition:opacity .55s}
.gallery-photo-index{position:absolute;bottom:12px;left:13px;font-size:12px;letter-spacing:.06em;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 1px 9px #000}
.gallery-photo-expand{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffff35;border-radius:50%;color:#fff;background:#1116;backdrop-filter:blur(10px);font-size:20px;line-height:1;opacity:0;transform:translateY(4px);transition:opacity .4s,transform .4s}
.gallery-photo:hover img,.gallery-photo:focus-visible img{transform:scale(1.035)}
.gallery-photo:hover::after,.gallery-photo:focus-visible::after{opacity:1}
.gallery-photo:hover .gallery-photo-expand,.gallery-photo:focus-visible .gallery-photo-expand{opacity:1;transform:none}
.gallery-photo-wide{grid-column:1/-1;aspect-ratio:1.497/1}
.gallery-photo-wide img{object-fit:contain}
.project-folder-gallery.is-gallery .folder-heading{position:sticky;top:-30px;z-index:3;padding-block:12px 18px;margin-top:-12px;background:linear-gradient(#141b17f5 75%,#141b1700);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.project-folder.is-playing .folder-tabs,.project-folder.is-viewing-photo .folder-tabs,.project-folder.is-viewing-photo .folder-credits,.project-folder.is-viewing-photo .folder-kicker{display:none}
.project-folder.is-viewing-photo{width:min(1080px,calc(100% - 40px));background:#0a0e0c}
.project-folder.is-viewing-photo .folder-heading{position:static;align-items:center;padding:0;margin:0 0 10px;background:none;backdrop-filter:none}
.project-folder.is-viewing-photo .folder-heading h2{font-size:22px;letter-spacing:-.03em}
.photo-back{display:block;border:0;padding:9px 0 15px;background:none;color:#b3bfb6;font:inherit;font-size:14px;cursor:pointer}
.photo-back:hover{color:#fff}
.photo-stage{position:relative;width:100%;height:min(64svh,680px);overflow:hidden;border-radius:14px;background:#050706;touch-action:pan-y pinch-zoom;isolation:isolate}
.photo-stage img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;border-radius:0!important}
.photo-navigation{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px}
.photo-navigation button{min-height:42px;padding:8px 18px;border:1px solid #ffffff1f;border-radius:100px;background:linear-gradient(145deg,#ffffff0c,#ffffff03);color:#d6dfd8;font:inherit;font-size:14px;cursor:pointer;transition:background .3s,border-color .3s}
.photo-navigation button:hover{background:#ffffff12;border-color:#ffffff45}
.photo-counter{color:#a8b6ac;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.13em;text-align:center}
.project-folder [hidden]{display:none!important}
@media(max-width:700px){
 .project-folder-gallery.is-gallery,.project-folder.is-viewing-photo{width:calc(100% - 24px)}
 .folder-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .photo-album-tabs{gap:24px;margin-bottom:18px}.photo-album-tabs button{flex-direction:column;gap:5px;font-size:14px;padding-bottom:13px}.photo-album-count{font-size:10px}.photo-album-empty{min-height:240px}
 .gallery-photo{border-radius:11px}.gallery-photo-index{bottom:9px;left:10px}
 .gallery-photo-expand{display:none}
 .folder-tabs{margin-bottom:20px}.folder-tabs button{padding:10px 15px}
 .project-folder-gallery.is-gallery .folder-heading{top:-22px}
 .project-folder.is-viewing-photo .folder-heading h2{font-size:22px}
 .photo-stage{height:calc(100svh - 235px);min-height:230px;max-height:680px;border-radius:10px}
 .photo-navigation{gap:9px}.photo-navigation button{padding:8px 14px}
}
@media(prefers-reduced-motion:reduce){.project-folder-gallery,.gallery-photo img,.gallery-photo-expand,.gallery-photo::after{transition:none}.gallery-photo:hover img,.gallery-photo:focus-visible img{transform:none}}
@media(prefers-reduced-motion:reduce){.photo-album-tabs button,.photo-album-tabs button::after{transition:none}}

#portimao-motorsport-folder .folder-film:first-child .folder-cover img{object-position:50% 34%}

/* White brand signatures appear only while exploring selected covers. */
.folder-heading>div{flex:1;min-width:0}
.project-brand-overlay{position:absolute;inset:0;z-index:4;display:grid;place-items:center;pointer-events:none;opacity:0;transform:scale(.96);transition:opacity .45s ease,transform .65s cubic-bezier(.22,1,.36,1)}
.project-brand-mark{display:block;width:var(--brand-width);max-width:60%;height:var(--brand-height);background:#fff;-webkit-mask:var(--brand-logo) center/contain no-repeat;mask:var(--brand-logo) center/contain no-repeat}
.project-brand-overlay.project-brand-pair{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px}
.project-brand-pair .project-brand-mark{max-width:50%;height:var(--brand-height);flex:none}
@media(max-width:700px){.project-brand-overlay.project-brand-pair{gap:10px}.project-brand-pair .project-brand-mark{width:calc(var(--brand-width) * .68);height:calc(var(--brand-height) * .68);max-width:66%}}
.work-view .project-link.project-has-brand:focus-visible .project-image>img{transform:scale(1.045);filter:blur(2.5px) brightness(.62)}
.work-view .project-link.project-has-brand:focus-visible .project-brand-overlay{opacity:1;transform:none}
.work-view .project-link.project-has-brand:focus-visible .watch-film,.work-view .project-link.project-has-brand:focus-visible .project-image::after{opacity:0}
@media(hover:hover) and (pointer:fine){
 .work-view .project-link.project-has-brand:hover .project-image>img{transform:scale(1.045);filter:blur(2.5px) brightness(.62)}
 .work-view .project-link.project-has-brand:hover .project-brand-overlay{opacity:1;transform:none}
 .work-view .project-link.project-has-brand:hover .watch-film,.work-view .project-link.project-has-brand:hover .project-image::after{opacity:0}
}
@media(prefers-reduced-motion:reduce){
 .project-brand-overlay{transition:none;transform:none}
 .work-view .project-link.project-has-brand:is(:hover,:focus-visible) .project-image>img{transform:none}
}

/* Keep the performer framed in the project grid. */
.work-view .project-link[aria-controls="europa-fm-folder"] .project-image>img{object-position:80% 50%}

/* Give the full creative credit room on narrow screens. */
@media(max-width:700px){#indiana-foils-folder .folder-credits{grid-template-columns:1fr 1fr;gap:16px 12px}#indiana-foils-folder .folder-credits>div:last-child{grid-column:1/-1}}

/* Original video thumbnails, each with its own production credit. */
.work-view .project-link[aria-controls="guillermo-h-folder"] .project-image>img{object-position:60% 50%}
#guillermo-h-folder{width:min(940px,calc(100% - 40px))}
#guillermo-h-folder .folder-cover{aspect-ratio:16/9}
#guillermo-h-folder .folder-films{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:24px}
#guillermo-h-folder .folder-film-label{display:block}
#guillermo-h-folder .folder-film-label>span+span{display:block;margin-top:4px;text-align:left;font-size:14px;color:#b6c1b9}
#guillermo-h-folder a.folder-film{display:block;text-decoration:none}
#guillermo-h-folder .folder-film-label>span:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.folder-film-service{font-size:12px;color:#9ca79f}
@media(max-width:700px){#guillermo-h-folder{width:calc(100% - 24px)}#guillermo-h-folder .folder-films{grid-template-columns:repeat(2,minmax(0,1fr))}}
