/* Real work, with room for the next project. */
.fc-case { padding-top:100px; }
.fc-case .fc-section-meta { border-top:1px solid #ffffff20; padding-top:26px; }
.fc-portfolio-heading { display:flex; justify-content:space-between; align-items:end; gap:40px; margin:64px 0 86px; }
.fc-portfolio-heading h2 { font-size:clamp(66px,8vw,128px); font-weight:400; letter-spacing:-.065em; line-height:1; }
.fc-portfolio-heading h2>span { color:var(--blue); }
.fc-portfolio-heading>p { color:#a6a7ae; font-size:16px; line-height:1.65; margin-bottom:8px; }
.fc-case-heading { margin:0 0 40px; align-items:end; }
.fc-case-heading h3 { font-size:clamp(40px,4.4vw,68px); font-weight:400; letter-spacing:-.055em; line-height:1.04; }
.fc-case-heading h3 span { color:#92949d; }
.fc-case-intro { display:grid; gap:22px; }
.fc-case-intro>p { color:#afb0b7; font-size:15px; line-height:1.6; }
.fc-project-scroll { position:relative; }
.fc-project-scroll::after { content:''; display:block; height:var(--case-travel,0px); }
.fc-project-sticky { position:sticky; top:106px; }
.fc-case-stage { padding:38px 86px 30px 38px; border-radius:20px; background:radial-gradient(ellipse at 48% 5%,#273c791c,transparent 68%),linear-gradient(145deg,#1d1f25,#151619 70%); border:1px solid #ffffff12; isolation:isolate; }
.fc-desktop-capture { position:relative; max-width:min(1050px,calc((100svh - 285px)*1.7778)); margin-inline:auto; border:1px solid #ffffff26; border-radius:12px; background:#fff; box-shadow:0 30px 65px -25px #000b,0 2px 6px #0007,0 1px 0 #ffffff18 inset; overflow:hidden; }
.fc-capture-toolbar { height:42px; padding:0 16px; display:grid; grid-template-columns:1fr minmax(120px,46%) 1fr; gap:16px; background:linear-gradient(#303137,#26272c); border-bottom:1px solid #0006; color:#bfc0c8; font-size:10px; }
.fc-window-controls { display:flex; gap:7px; align-items:center; }
.fc-window-controls i { display:block; width:9px; height:9px; border-radius:50%; background:#d8776e; box-shadow:0 0 0 1px #0002 inset; }
.fc-window-controls i:nth-child(2) { background:#d7b765; }.fc-window-controls i:nth-child(3) { background:#70af83; }
.fc-window-address { display:flex; justify-content:center; align-items:center; gap:8px; background:#191a1e65; border:1px solid #ffffff08; border-radius:5px; height:25px; letter-spacing:.015em; }
.fc-window-address svg { width:10px; height:10px; fill:none; stroke:currentColor; stroke-width:1.2; opacity:.6; }
.fc-window-action { justify-self:end; opacity:.65; }
.fc-project-viewport { position:relative; width:100%; aspect-ratio:16/9; max-height:calc(100svh - 255px); overflow:hidden; background:white; }
.fc-project-viewport picture { display:block; }
.fc-project-viewport .fc-project-page { display:block; width:100%; height:auto; max-width:none; transform:translate3d(0,0,0); transition:none!important; }
.fc-project-scroll.is-running .fc-project-page { will-change:transform; }
.fc-mobile-capture { width:16%; max-width:174px; height:auto; top:auto; bottom:8px; right:23px; border:5px solid #303136; border-radius:24px; box-shadow:0 20px 35px #0008,0 0 0 1px #ffffff24; }
.fc-mobile-capture:before { content:''; position:absolute; width:30%; height:9px; border-radius:0 0 7px 7px; top:0; left:35%; background:#303136; }
.fc-project-caption { display:flex; align-items:center; gap:24px; padding:20px 2px 4px; color:#92949e; font-size:11px; line-height:1.5; }
.fc-project-scroll-cue { margin-left:auto; display:flex; gap:16px; white-space:nowrap; }
.fc-project-progress { width:65px; height:2px; background:#ffffff1f; overflow:hidden; }
.fc-project-progress i { display:block; width:100%; height:100%; background:#798cff; transform:scaleX(0); transform-origin:left; }
.fc-case-notes { padding-top:50px; gap:60px; }
.fc-case-notes>p { max-width:680px; font-size:clamp(20px,2vw,29px); line-height:1.45; color:#d0d0d4; }
.fc-case-notes>div { padding-right:0; }.fc-case-notes div p { color:#b3b4bc; margin:10px 0 16px; }
.fc-testimonial { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; gap:70px; border-top:1px solid #ffffff20; margin-top:66px; padding-top:44px; }
.fc-testimonial-quote { margin:0; max-width:27ch; font-size:clamp(27px,2.7vw,40px); font-weight:400; line-height:1.2; letter-spacing:-.045em; }
.fc-testimonial-quote cite { display:block; font-size:12px; line-height:1.6; letter-spacing:0; font-style:normal; color:#9799a3; margin-top:22px; }
.fc-testimonial-trigger { display:flex; align-items:center; gap:17px; justify-self:end; color:var(--paper); background:#17181c; border:1px solid #ffffff24; border-radius:13px; padding:18px; text-align:left; font-size:13px; line-height:1.5; }
.fc-testimonial-trigger>span:last-child { margin-left:18px; color:#a4b1ff; font-size:22px; }
.fc-testimonial-trigger small { display:block; margin-top:5px; color:#979ba8; font-size:11px; }
.fc-testimonial-avatar { width:51px; height:58px; position:relative; flex-shrink:0; border-radius:7px; overflow:hidden; }
.fc-testimonial-avatar img { width:100%; height:100%; object-fit:cover; object-position:50% 30%; filter:brightness(.7); }
.fc-testimonial-avatar>span { position:absolute; inset:0; display:grid; place-items:center; color:white; font-size:23px; }
.fc-case-next { margin-top:55px; padding-top:30px; border-top:1px solid #ffffff12; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.fc-case-next>p { color:#999ca7; font-size:13px; }
.fc-testimonial-dialog { width:100%; max-width:none; height:100%; max-height:none; margin:0; padding:36px; border:0; background:transparent; color:var(--paper); overflow-y:auto; overscroll-behavior:contain; }
.fc-testimonial-dialog::backdrop { background:#06080be8; backdrop-filter:blur(6px); }
.fc-testimonial-dialog[open] { display:flex; align-items:safe center; justify-content:center; }
.fc-dialog-panel { width:min(1040px,100%); flex-shrink:0; border:1px solid #ffffff24; border-radius:20px; background:radial-gradient(ellipse at 100% 0,#3454ff0b,transparent 50%),#141519; box-shadow:0 40px 100px #0007; padding:30px; margin:auto; }
.fc-dialog-header { display:flex; gap:24px; align-items:start; justify-content:space-between; border-bottom:1px solid #ffffff19; padding-bottom:25px; margin-bottom:28px; }
.fc-dialog-header .fc-eyebrow { color:#9ba7d3; font-size:10px; margin:0 0 12px; }
.fc-dialog-header h2 { font-size:clamp(28px,3.2vw,43px); letter-spacing:-.05em; font-weight:400; line-height:1.1; }
.fc-dialog-close { display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; border:1px solid #ffffff2a; border-radius:50%; background:#1f2026; color:var(--paper); font-size:28px; line-height:1; }
.fc-dialog-body { display:grid; grid-template-columns:minmax(220px,.85fr) minmax(0,1.15fr); gap:38px; align-items:start; }
.fc-testimonial-player { position:sticky; top:0; }
.fc-testimonial-player video { display:block; width:100%; max-height:62svh; background:#08090b; border-radius:10px; object-fit:contain; }
.fc-testimonial-player>p { font-size:11px; color:#a0a3af; text-align:center; margin-top:14px; }
.fc-testimonial-text>.fc-eyebrow { font-size:10px; color:#969ba9; margin:0 0 20px; }
.fc-testimonial-text blockquote { margin:0; font-size:15px; line-height:1.8; color:#c4c5cd; }
.fc-testimonial-text blockquote p+p { margin-top:18px; }
.fc-testimonial-text em { color:var(--paper); font-style:normal; }
.fc-testimonial-credit { font-size:12px; color:#9296a3; margin:24px 0 0; }
.fc-video-fallback { display:block; font-size:13px; text-align:center; margin-top:16px; }
.fc-video-fallback[hidden] { display:none; }
body:not(.fc-motion-enabled) .fc-project-sticky { position:relative; top:0; }
body:not(.fc-motion-enabled) .fc-project-scroll-cue,body:not(.fc-motion-enabled) .fc-project-progress { display:none; }
@media(min-width:1700px){.fc-case-stage{padding-block:42px;}.fc-project-sticky{top:112px}}
@media(max-width:1100px){.fc-portfolio-heading{margin-bottom:65px}.fc-case-heading{flex-direction:row}.fc-case-stage{padding:25px 65px 25px 25px}.fc-mobile-capture{right:16px;max-width:140px}.fc-testimonial{gap:30px}.fc-testimonial-trigger{padding:14px;gap:12px}.fc-testimonial-trigger>span:last-child{margin-left:0}}
@media(max-width:760px){
 .fc-case{padding-top:74px}.fc-portfolio-heading{display:block;margin:44px 0 56px}.fc-portfolio-heading h2{font-size:clamp(54px,12vw,84px)}.fc-portfolio-heading>p{font-size:14px;margin:25px 0 0}.fc-case-heading{align-items:start;gap:26px}.fc-case-heading h3{font-size:42px}.fc-case-intro>p{font-size:13px}.fc-case-intro .fc-link{font-size:12px;gap:15px}
 .fc-project-sticky{top:92px}.fc-case-stage{padding:20px 38px 24px 16px;border-radius:14px}.fc-project-caption{gap:12px;font-size:10px}.fc-project-caption>span:first-child{max-width:55%}.fc-project-progress{display:none}.fc-case-notes{padding-top:34px;gap:26px}.fc-case-notes>p{font-size:21px}.fc-testimonial{grid-template-columns:1fr;gap:27px;margin-top:44px;padding-top:32px}.fc-testimonial-trigger{justify-self:start;padding:15px 18px}.fc-testimonial-quote{font-size:30px}.fc-case-next{flex-direction:column;align-items:start;margin-top:36px;gap:18px}.fc-case-next .fc-link{font-size:13px}
 .fc-testimonial-dialog{padding:16px}.fc-dialog-panel{padding:23px;border-radius:15px}.fc-dialog-header{gap:12px}.fc-dialog-body{gap:26px;grid-template-columns:1fr}.fc-testimonial-player{position:static}.fc-testimonial-player video{max-height:57svh}.fc-testimonial-text blockquote{font-size:14px}
}
@media(max-width:600px){
 .fc-case-heading{flex-direction:column}.fc-case-intro{gap:14px}.fc-case-intro>p br{display:none}.fc-case-stage{padding:16px}.fc-mobile-capture{display:none}.fc-desktop-capture{max-width:370px;border-radius:9px}.fc-capture-toolbar{height:34px;padding:0 11px;gap:10px;grid-template-columns:1fr minmax(110px,48%) 1fr}.fc-window-controls{gap:5px}.fc-window-controls i{width:7px;height:7px}.fc-window-address{font-size:9px;height:22px}.fc-project-viewport{aspect-ratio:390/560;max-height:calc(100svh - 250px)}.fc-project-caption{padding-top:14px}.fc-project-caption>span:first-child{max-width:50%}.fc-project-scroll-cue{gap:8px;white-space:normal;text-align:right;max-width:110px}.fc-case-notes>p{font-size:20px}
}
@media(max-height:600px) and (min-width:601px){.fc-project-sticky{top:85px}.fc-desktop-capture{max-width:min(1050px,calc((100svh - 205px)*1.7778))}.fc-case-stage{padding:12px 60px 12px 18px}.fc-project-viewport{max-height:calc(100svh - 205px)}.fc-project-caption{padding-top:10px}.fc-mobile-capture{max-height:calc(100svh - 195px);width:100px}.fc-capture-toolbar{height:32px}}
