/* The connected site: quiet typography, generous real imagery and clear next steps. */
:root{--ff-action-fill:#eadbc3;--ff-action-hover:#fff1dc;--ff-action-ink:#171819}
.ffs-site{padding-top:94px}.ffs-site #main:focus{outline:none}
:is(.fft-site,.ffp-site){--ffs-ink:#090b0d;--ffs-paper:#f0ede3;--ffs-gold:#d4ad7c;--ffs-rail:clamp(24px,5vw,88px)}
.ffs-wrap{width:100%;max-width:1660px;padding-inline:var(--ffs-rail);margin-inline:auto}
.ffs-section{padding-block:clamp(68px,8vw,130px)}
.ffs-kicker{font:500 10px/1.5 'Helvetica Neue',Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--ffs-gold);margin:0 0 22px}
.ffs-heading,.ffs-section h2,.ffs-section-head h2,.ffs-feature h2{font-size:clamp(42px,5.2vw,82px);line-height:1.04;letter-spacing:-.045em;font-weight:400;margin:0 0 26px;text-wrap:balance}
.ffs-section p,.ffs-feature p{max-width:520px;color:#bdbeb9;font-size:16px;line-height:1.8}
.ffs-section .ffs-kicker,.ffs-feature .ffs-kicker{font-size:10px;color:var(--ffs-gold);line-height:1.5;margin:0 0 22px}
.ffs-button{display:inline-flex;align-items:center;justify-content:space-between;gap:48px;background:var(--ff-action-fill);color:var(--ff-action-ink)!important;border:1px solid var(--ff-action-fill);border-radius:30px;padding:16px 24px;font-size:13px;line-height:1.3;min-height:50px;width:fit-content;transition:background .2s,color .2s}
.ffs-button:hover{background:var(--ff-action-hover)}.ffs-button span{font-size:19px}.ffs-feature .ffs-button{margin-top:30px}
.ffs-text-link{display:inline-flex;justify-content:space-between;gap:32px;align-items:center;border-bottom:1px solid #d4ad7c80;padding:13px 0;font-size:13px;color:#f0ede3!important;margin-top:18px}
.ffs-text-link span{color:var(--ffs-gold)}
.ffs-header{height:94px;position:fixed;z-index:140;top:0;left:0;right:0;display:flex;align-items:center;gap:36px;padding:8px var(--ffs-rail);background:#090b0df7;border-bottom:1px solid #ffffff20;font-family:'Helvetica Neue',Arial,sans-serif;color:#f0ede3;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.ffs-logo{width:85px;flex:none}.ffs-logo img{display:block;width:85px;height:68px!important;object-fit:contain}
.ffs-header-links{margin-left:auto;display:flex;align-items:center;gap:36px;font-size:12px}.ffs-header-links a{color:#e8e5dd;text-decoration:none}
.ffs-header-links .ffs-header-quote{padding:12px 20px;border:1px solid #d4ad7c80;border-radius:30px;display:flex;gap:24px}.ffs-header-quote span{color:#d4ad7c}
.ffs-menu{position:relative;font-size:12px;line-height:1.5;flex:none}.ffs-menu summary{list-style:none;cursor:pointer;padding:12px 0}.ffs-menu summary::-webkit-details-marker{display:none}.ffs-menu summary>span{display:inline-block;color:#d4ad7c;margin-left:10px}.ffs-menu[open] summary>span{transform:rotate(45deg)}
.ffs-menu-sheet{position:absolute;right:0;top:52px;background:#101417fa;border:1px solid #d4ad7c38;padding:22px 30px;width:350px;max-width:calc(100vw - 36px);max-height:calc(100svh - 100px);overflow:auto;box-shadow:0 20px 50px #0008;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.ffs-menu-links{display:grid}.ffs-menu-links a{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px;padding:13px 0;border-bottom:1px solid #ffffff18;text-decoration:none;color:#f0ede3}.ffs-menu-links a span{color:var(--ffs-gold)}.ffs-menu-links a[aria-current="page"]{color:var(--ffs-gold)}
.ffs-header :is(a,summary):focus-visible,.ffs-footer a:focus-visible{outline:2px solid #d4ad7c;outline-offset:5px}
.ffs-hero{position:relative;min-height:640px;height:calc(92svh - 94px);max-height:1050px;isolation:isolate;background:#151c20;overflow:hidden;display:flex;align-items:flex-end}
.ffs-hero-media{position:absolute;inset:0;z-index:-2;margin:0}.ffs-hero-media :is(img,video){height:100%!important;width:100%;object-fit:cover;display:block;filter:saturate(.7) brightness(.76)}
.ffs-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#090b0df0,transparent 78%);z-index:-1;pointer-events:none}
.ffs-hero-copy{padding:65px var(--ffs-rail);width:100%;max-width:1660px;margin-inline:auto}.ffs-hero h1{font-size:clamp(65px,8.5vw,135px);line-height:.95;letter-spacing:-.065em;color:#f0ede3;max-width:1100px;margin:0 0 28px;font-weight:400;text-wrap:balance}
.ffs-hero-copy>p:not(.ffs-kicker){font-size:17px;line-height:1.65;color:#deded6;max-width:450px;margin:0}.ffs-hero-copy .ffs-button{margin-top:25px}
.ffs-hero-media figcaption,.ffs-film-credit{position:absolute;right:var(--ffs-rail);top:26px;color:#f0ede3;background:#090b0dbd;padding:7px 12px;font-size:10px;line-height:1.5;z-index:1;max-width:270px}
.ffs-film-toggle{position:absolute;right:var(--ffs-rail);bottom:40px;z-index:2;border:1px solid #f0ede378!important;border-radius:40px!important;background:#090b0da1!important;color:#f0ede3!important;padding:10px 16px!important;font-size:11px!important}
.ffs-preview-note{padding:18px var(--ffs-rail);font-size:10px;line-height:1.7;color:#999f9e;border-bottom:1px solid #ffffff17;background:#0e1215;margin:0}
.ffs-section-head{display:grid;grid-template-columns:1.2fr 1fr;column-gap:8vw;align-items:end;margin-bottom:45px}.ffs-section-head .ffs-kicker{grid-column:1/-1}.ffs-section-head h2{margin:0}.ffs-section-head>p:last-child{color:#bdbeb9;font-size:16px;line-height:1.8;max-width:470px}
.ffs-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(35px,7vw,110px);align-items:center}.ffs-feature+.ffs-feature{margin-top:95px}.ffs-feature.is-reversed>figure{order:2}
.ffs-media{position:relative;overflow:hidden;background:#1b2023;margin:0;min-width:0}.ffs-media img{width:100%;height:100%!important;aspect-ratio:1.12;object-fit:cover;filter:saturate(.8)}.ffs-media figcaption{position:absolute;bottom:18px;left:18px;right:18px;width:fit-content;max-width:calc(100% - 36px);padding:6px 10px;background:#0a0c0dce;color:#dddcd4;font-size:10px;line-height:1.5}
.ffs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:55px}.ffs-card{border-top:1px solid #ffffff30;padding-top:25px}.ffs-card img{aspect-ratio:1.15;object-fit:cover;width:100%;margin-bottom:25px}.ffs-card h3{font-size:27px;letter-spacing:-.035em;line-height:1.15;margin:0 0 16px}.ffs-card p{font-size:14px;line-height:1.75;color:#aeb2b0}.ffs-card .ffs-kicker{font-size:9px}
.ffs-related{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:32px}.ffs-related>a{display:block;position:relative;overflow:hidden;min-height:400px;background:#1d2327;color:#f0ede3;text-decoration:none;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate}.ffs-related>a>img{position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;z-index:-2;filter:saturate(.6) brightness(.63);transition:transform .8s}.ffs-related>a:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#090b0df5,transparent)}.ffs-related>a:hover>img{transform:scale(1.025)}.ffs-related h3{font-size:clamp(32px,3.8vw,60px);letter-spacing:-.04em;line-height:1.03;color:#f0ede3;font-weight:400;margin:0 0 16px}.ffs-related p{font-size:14px;color:#c1c4c1;max-width:340px;line-height:1.65}.ffs-related .ffs-kicker{font-size:9px;color:#d4ad7c;margin-bottom:16px}.ffs-related .ffs-text-link{width:100%;margin-top:22px}
.ffs-palette-preview{padding:clamp(65px,7vw,110px) var(--ffs-rail);background:#e9e6de;color:#151b1e;display:grid;grid-template-columns:1.55fr repeat(3,1fr);gap:35px;align-items:center}.ffs-palette-preview h2{font-size:clamp(40px,4.2vw,68px);line-height:1.03;letter-spacing:-.05em;margin:0 0 25px}.ffs-palette-preview em,.ffs-palette-preview .ffs-kicker{color:#84603d}.ffs-palette-preview p{font-size:13px;line-height:1.7;max-width:320px}.ffs-palette-preview .ffs-text-link{color:#151b1e!important;border-color:#826344;gap:18px}.ffs-palette-preview>a{display:block}.ffs-palette-preview>a img{width:100%;aspect-ratio:1;height:auto;border-radius:50%;object-fit:cover}.ffs-palette-preview>a>span{display:flex;justify-content:space-between;font-size:12px;margin-top:24px}.ffs-palette-preview a:focus-visible{outline-color:#77552f}
.ffs-quote-band{padding:clamp(70px,9vw,135px) var(--ffs-rail);display:flex;align-items:center;justify-content:space-between;gap:45px;background:#11191d;border-bottom:1px solid #ffffff25}.ffs-quote-band h2{font-size:clamp(48px,6.4vw,104px);font-weight:400;letter-spacing:-.06em;line-height:1.02;margin:0}.ffs-quote-band p:not(.ffs-kicker){color:#b5b9b5;font-size:15px;line-height:1.7;margin-top:23px;max-width:460px}.ffs-quote-band .ffs-button{flex:none;min-width:190px}
.ffs-footer{padding:55px var(--ffs-rail) 30px;background:#090b0d;color:#eee9df;font:12px/1.7 'Helvetica Neue',Arial,sans-serif}.ffs-footer a{color:#eee9df;text-decoration:none}.ffs-footer-top{display:flex;justify-content:space-between;align-items:start;gap:35px}.ffs-footer-top>a:first-child{letter-spacing:.07em;font-size:20px}.ffs-footer-top>span{color:#a9afa9}.ffs-footer-top>a:last-child{border-bottom:1px solid #d4ad7c65;padding-bottom:12px}.ffs-footer-top>a:last-child span{color:#d4ad7c;margin-left:35px}.ffs-footer .ffs-menu-links{display:flex;gap:25px;flex-wrap:wrap;margin-block:40px 26px}.ffs-footer .ffs-menu-links a{font-size:11px;padding:0;border:0}.ffs-footer .ffs-menu-links a>span{display:none}.ffs-footer>p{font-size:10px;color:#919a99;max-width:840px;margin:0}
.ffs-home-intro{padding-top:80px;padding-bottom:80px}.ffs-home-intro h1{font-size:clamp(39px,5vw,75px);font-weight:400;line-height:1.08;letter-spacing:-.045em;margin:0}.ffs-home-intro .ffs-section-head{margin:0}.ffs-home-luke{border-top:1px solid #ffffff24;padding-top:70px}.ffs-luke-placeholder{aspect-ratio:1.12;background:radial-gradient(ellipse at 50% 40%,#38352d 0,#1b1d1c 45%,#111416 80%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.ffs-luke-placeholder:before{content:"";position:absolute;width:74%;aspect-ratio:1;border:1px solid #d4ad7c20;border-radius:50%}.ffs-luke-placeholder img{width:42%;height:auto!important;aspect-ratio:auto;object-fit:contain;z-index:1}.ffs-luke-placeholder figcaption{position:absolute;bottom:28px;left:28px;right:28px;color:#c7c3b8;font-size:11px}.ffs-luke-placeholder figcaption span{display:block;font-size:9px;color:#9c9c90;margin-top:7px}
.ffs-home-divider{border-top:1px solid #ffffff22}.ffs-home-business{background:#11171a}.ffs-home-business .ffs-related>a{min-height:480px}
.ffs-split-choice h2 a{display:inline-block;position:relative}.ffs-split-choice h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:10px}.ffs-split-choice h2 a:after{content:'↗';font:300 .35em/1 Arial;color:#d4ad7c;display:inline-block;vertical-align:top;margin:8px 0 0 12px}
.ffs-site .ffs-about-hero{min-height:600px}.ffp-site:has(.ffs-header){padding-top:94px}.ffp-site:has(.ffs-header) .ffp-jumps{top:94px}.ffp-site .ffs-footer{padding-bottom:140px}.ffp-quote-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:#d4ad7c;color:#101112!important;border-radius:5px;padding:14px 20px;font-size:13px;line-height:1.4;margin:4px 28px 25px}.ffp-quote-close{padding:65px var(--ffs-rail);background:#171d20}.ffp-quote-close h2{font-size:46px;line-height:1.05;margin-bottom:22px}.ffp-quote-close .ffp-quote-link{margin:0}
@media(max-width:1050px){.ffs-header-links{gap:24px}.ffs-header{gap:26px}.ffs-hero{min-height:590px}.ffs-palette-preview{grid-template-columns:repeat(3,1fr);gap:28px}.ffs-palette-preview>div{grid-column:1/-1}.ffs-palette-preview h2{max-width:600px}.ffs-related>a{min-height:360px}.ffs-feature{gap:45px}.ffs-section-head{gap:35px}}
@media(max-width:700px){
 .ffs-site{padding-top:78px}.ffs-header{height:78px;padding-block:5px;gap:20px}.ffs-logo,.ffs-logo img{width:67px}.ffs-logo img{height:54px!important}.ffs-header-links{gap:0;font-size:10px}.ffs-header-links>a:not(.ffs-header-quote){display:none}.ffs-header-links .ffs-header-quote{padding:10px 13px;gap:15px}.ffs-menu{font-size:11px}.ffs-menu-sheet{top:46px;padding:20px 24px}.ffs-menu-links a{font-size:16px;padding-block:13px}
 .ffs-hero{height:calc(85svh - 78px);min-height:570px}.ffs-hero-copy{padding:45px 24px}.ffs-hero h1{font-size:clamp(57px,14vw,90px);line-height:.98;letter-spacing:-.055em;margin-bottom:22px}.ffs-hero-copy>p:not(.ffs-kicker){font-size:15px;max-width:330px}.ffs-hero-media :is(img,video){object-position:center}.ffs-hero-media figcaption,.ffs-film-credit{top:18px;right:24px;font-size:9px;max-width:230px}.ffs-film-toggle{bottom:auto;top:62px;right:24px}
 .ffs-section{padding-block:64px}.ffs-section-head{display:block;margin-bottom:30px}.ffs-section-head>p:last-child{margin-top:22px;font-size:14px}.ffs-section-head h2,.ffs-feature h2{font-size:44px}.ffs-feature{grid-template-columns:1fr;gap:30px}.ffs-feature.is-reversed>figure{order:0}.ffs-feature p{font-size:15px}.ffs-feature+.ffs-feature{margin-top:60px}.ffs-feature .ffs-button{margin-top:24px}.ffs-media img{aspect-ratio:1.12}.ffs-kicker,.ffs-section .ffs-kicker{margin-bottom:18px;font-size:9px}
 .ffs-grid{grid-template-columns:1fr;gap:32px;margin-top:38px}.ffs-card{display:block}.ffs-card h3{font-size:30px}.ffs-card img{aspect-ratio:1.3}.ffs-card p{max-width:420px}.ffs-related{grid-template-columns:1fr;gap:18px}.ffs-related>a,.ffs-home-business .ffs-related>a{min-height:390px;padding:26px}.ffs-related h3{font-size:45px}.ffs-related p{font-size:13px}.ffs-related .ffs-text-link{font-size:12px}
 .ffs-palette-preview{padding-block:60px;gap:16px}.ffs-palette-preview h2{font-size:43px}.ffs-palette-preview>div{margin-bottom:14px}.ffs-palette-preview>a>span{font-size:10px;margin-top:18px;gap:6px}.ffs-palette-preview .ffs-text-link{font-size:12px}
 .ffs-quote-band{display:block;padding-block:65px}.ffs-quote-band h2{font-size:53px}.ffs-quote-band .ffs-button{margin-top:30px}.ffs-quote-band p:not(.ffs-kicker){font-size:14px}
 .ffs-footer{padding-top:40px}.ffs-footer-top{flex-wrap:wrap;gap:22px}.ffs-footer-top>a:first-child{flex-basis:100%}.ffs-footer-top>span{font-size:11px}.ffs-footer-top>a:last-child{font-size:11px;max-width:190px}.ffs-footer .ffs-menu-links{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;margin-block:32px}.ffs-footer>p{font-size:9px}
 .ffs-home-intro{padding-block:60px}.ffs-home-intro h1{font-size:39px}.ffs-home-luke{padding-top:55px}.ffs-home-luke .ffs-feature{gap:32px}.ffs-luke-placeholder{aspect-ratio:1.18}.ffs-split-choice h2 a:after{margin-top:5px;margin-left:8px}
 .ffp-site:has(.ffs-header){padding-top:78px}.ffp-site:has(.ffs-header) .ffp-jumps{top:78px}.ffp-quote-close h2{font-size:38px}.ffp-quote-link{margin-inline:22px}
}
@media(max-width:360px){.ffs-header{gap:13px}.ffs-header-links .ffs-header-quote{gap:8px;padding:10px}.ffs-hero h1{font-size:53px}.ffs-hero-copy{padding-inline:24px}.ffs-section-head h2,.ffs-feature h2{font-size:40px}.ffs-related h3{font-size:39px}.ffs-quote-band h2{font-size:47px}.ffs-footer-top>a:last-child{max-width:145px}}
@media(prefers-reduced-motion:reduce){.ffs-related>a>img,.ffs-button{transition:none}}
.ffs-feature h3{font-size:clamp(32px,3.5vw,53px);font-weight:400;letter-spacing:-.04em;line-height:1.05;margin:0 0 22px}.ffs-feature p+p{margin-top:16px}
.ffs-related>a>span:not(.ffs-text-link){font-size:clamp(33px,4vw,61px);line-height:1.1;letter-spacing:-.04em;margin-bottom:16px}.ffs-related>a>span>span{font-size:.55em;vertical-align:top;color:#d4ad7c;margin-left:10px}
.ffs-hero.is-about{background:radial-gradient(ellipse at 80% 50%,#35332b,#101719 64%)}.ffs-hero.is-about .ffs-hero-media{left:56%;right:5%;display:flex;align-items:center;justify-content:center}.ffs-hero.is-about .ffs-brand-image{width:85%;height:auto!important;object-fit:contain;filter:none}.ffs-hero.is-about .ffs-hero-copy h1{max-width:70%}.ffs-hero.is-about:after{background:linear-gradient(90deg,#090b0d7a,transparent 95%)}
.ffs-film-placeholder{min-height:420px;background:radial-gradient(ellipse,#35332b,#101719);display:flex;align-items:center;justify-content:center}.ffs-film-placeholder .ffs-brand-image{width:46%;height:auto!important;aspect-ratio:auto;object-fit:contain}
.ffs-hero-media video{position:absolute;inset:0}.ffs-hero [hidden]{display:none!important}.ffs-process-film video{display:block;width:100%;aspect-ratio:1.12;object-fit:cover;background:#0d1012}.ffs-process-film figcaption{position:static;width:100%;max-width:none;padding:15px 18px;font-size:10px;line-height:1.7;background:#171d20}.ffs-process-film figcaption a,.ffs-film-credit a{text-decoration:underline;text-underline-offset:3px}
.ffs-site .ffq-page .ffq-intro{padding-top:90px}
.page-id-44 .ffs-hero-media :is(img,video){object-position:50% 92%}
@media(min-width:701px) and (max-height:750px){.ffs-hero{min-height:570px}.ffs-hero-copy{padding-block:42px}.ffs-hero h1{font-size:clamp(64px,7.2vw,112px)}}
@media(max-width:700px){.ffs-hero.is-about{min-height:620px}.ffs-hero.is-about .ffs-hero-media{left:0;right:0;top:30px;bottom:auto;height:215px}.ffs-hero.is-about .ffs-brand-image{width:160px}.ffs-hero.is-about .ffs-hero-copy h1{max-width:100%;font-size:57px}.ffs-film-placeholder{min-height:320px}.ffs-feature h3{font-size:36px}.ffs-related>a>span:not(.ffs-text-link){font-size:42px}.fft-header nav{gap:16px}.fft-header nav a:first-child{display:none}}

/* One home section, three equal routes. */
.ffs-home-audiences .ffs-related{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ffs-home-audiences .ffs-related>a{min-height:500px;padding:28px}
.ffs-home-audiences .ffs-related h3{font-size:clamp(30px,3.1vw,50px)}
.ffs-home-audiences .ffs-related .ffs-kicker{font-size:8px;letter-spacing:.12em}
@media(max-width:950px){.ffs-home-audiences .ffs-related{grid-template-columns:1fr}.ffs-home-audiences .ffs-related>a{min-height:390px}.ffs-home-audiences .ffs-related h3{font-size:44px}}
@media(max-width:360px){.ffs-home-audiences .ffs-related>a{padding:24px}.ffs-home-audiences .ffs-related h3{font-size:39px}}

/* Full-bleed films sit beneath the shared translucent navigation. */
.ffs-site .ffs-hero{height:100svh;min-height:640px;max-height:none;margin-top:0}
.ffs-site .ffs-hero-copy{padding-top:calc(var(--ffnav-height,88px) + 115px);padding-bottom:clamp(50px,7vh,90px)}
.ffs-site .ffs-hero:after{background:linear-gradient(90deg,#080b0eb8,transparent 85%),linear-gradient(0deg,#080b0ef5 0%,#080b0e55 55%,#080b0e18 100%)}
.ffs-site .ffs-hero-media :is(img,video){filter:saturate(.73) brightness(.83)}
.ffs-site .ffs-film-credit,.ffs-site .ffs-hero-media figcaption{top:calc(var(--ffnav-height,88px) + 20px);right:var(--ffs-rail);max-width:310px;margin:0;background:#090b0da6;color:#f0ede3}
.ffs-site .ffs-film-toggle{top:calc(var(--ffnav-height,88px) + 77px);bottom:auto;min-height:42px;min-width:92px}
.ffs-site .ffs-hero-people .ffs-hero-media :is(img,video){object-position:64% 45%}
/* Luke's supplied story, presented as three short editorial chapters. */
.ffs-luke-origin .ffs-feature{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.ffs-luke-origin .ffs-client-process{max-width:390px}
.ffs-luke-origin .ffs-feature h2{font-size:clamp(42px,4.7vw,74px)}
.ffs-luke-milestones{display:grid;grid-template-columns:1fr 1fr;gap:24px;border-top:1px solid var(--ff-section-rule);padding-top:25px;margin:35px 0 0;max-width:520px}
.ffs-luke-milestones dt{font-size:9px;font-weight:500;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:var(--ff-section-gold);margin-bottom:10px}
.ffs-luke-milestones dd{font-size:clamp(18px,1.7vw,24px);font-weight:400;line-height:1.4;letter-spacing:-.025em;margin:0;color:var(--ff-section-ink)}
.ffs-luke-craft{text-align:center}
.ffs-luke-craft-heading{max-width:1100px;margin-inline:auto}
.ffs-luke-craft .ffs-kicker{max-width:none}
.ffs-luke-craft h2{font-size:clamp(60px,9vw,142px);line-height:1;letter-spacing:-.055em;margin-bottom:46px}
.ffs-luke-craft-copy{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,75px);max-width:930px;margin-inline:auto;text-align:left;border-top:1px solid var(--ff-section-rule);padding-top:32px}
.ffs-luke-craft-copy p{max-width:none;margin:0}
.ffs-luke-craft .ffs-text-link{margin-top:32px}
.ffs-luke-reward{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,8vw,130px);align-items:start}
.ffs-luke-reward-copy{max-width:560px;padding-top:30px}
.ffs-luke-reward-copy>p{margin:0 0 20px;max-width:none}
.ffs-luke-reward .ffs-luke-pullquote{font:italic clamp(23px,2.6vw,37px)/1.35 Georgia,'Times New Roman',serif;color:var(--ff-section-gold);border-left:1px solid var(--ff-section-gold);padding-left:24px;margin:34px 0 0;letter-spacing:-.02em}
.ffs-luke-reward .ffs-luke-signature{font:italic 53px/1.1 Georgia,'Times New Roman',serif;color:var(--ff-section-gold);margin:32px 0 0}
.ffs-luke-signature span{display:block;font:500 9px/1.5 'Helvetica Neue',Arial,sans-serif;text-transform:uppercase;letter-spacing:.17em;color:var(--ff-section-copy);margin-top:12px}
@media(max-width:700px){
 .ffs-luke-origin .ffs-feature,.ffs-luke-reward,.ffs-luke-craft-copy{grid-template-columns:1fr}
 .ffs-luke-origin .ffs-feature{gap:34px}
 .ffs-luke-origin .ffs-client-process{max-width:340px}
 .ffs-luke-origin .ffs-feature h2{font-size:42px}
 .ffs-luke-craft h2{font-size:clamp(48px,12.5vw,80px);margin-bottom:30px}
 .ffs-luke-craft-copy{gap:20px;padding-top:25px}
 .ffs-luke-craft-copy p,.ffs-luke-reward-copy>p{font-size:15px;line-height:1.8}
 .ffs-luke-reward{gap:32px}
 .ffs-luke-reward h2{font-size:44px}
 .ffs-luke-reward-copy{padding-top:0}
 .ffs-luke-reward .ffs-luke-pullquote{margin-top:26px;padding-left:18px}
}
.ffs-story{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(50px,9vw,160px);align-items:start}
.ffs-story-heading{position:sticky;top:calc(var(--ffnav-height,88px) + 55px)}
.ffs-story-heading h2{font-size:clamp(54px,6vw,96px);max-width:520px}
.ffs-story .ffs-story-lede{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-size:clamp(25px,2.4vw,37px);line-height:1.35;color:#e1caa5;max-width:450px;margin:45px 0 18px;letter-spacing:-.025em}
.ffs-story .ffs-story-draft{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#929d9c;margin:0 0 25px}
.ffs-story-copy{max-width:720px;padding-top:5px}
.ffs-story-copy>p{font-size:17px;line-height:1.9;max-width:none;margin:0 0 24px;color:#c5cac5}
.ffs-story-copy h3{font-size:clamp(28px,2.5vw,40px);font-weight:400;line-height:1.15;letter-spacing:-.035em;margin:42px 0 23px;color:#f0ede3}
.ffs-story-copy .ffs-story-signature{font:italic 50px/1.1 Georgia,'Times New Roman',serif;color:#ddc29c;margin:40px 0 0}
.ffs-story-signature span{display:block;font:500 10px/1.5 'Helvetica Neue',Arial,sans-serif;text-transform:uppercase;letter-spacing:.2em;margin-top:13px;color:#afb8b3}
@media(max-width:900px){.ffs-story{grid-template-columns:1fr;gap:42px}.ffs-story-heading{position:static}.ffs-story-heading h2{font-size:clamp(51px,10vw,80px)}.ffs-story .ffs-story-lede{margin-top:25px;max-width:500px}.ffs-story-heading .ffs-text-link{display:none}.ffs-story-copy{max-width:700px}}
@media(max-width:700px){
 .ffs-site .ffs-hero{height:100svh;min-height:620px}
 .ffs-site .ffs-hero-copy{padding:calc(var(--ffnav-height,78px) + 128px) 24px 45px}
 .ffs-site .ffs-hero h1{font-size:clamp(54px,13.3vw,88px)}
 .ffs-site .ffs-film-credit,.ffs-site .ffs-hero-media figcaption{top:calc(var(--ffnav-height,78px) + 16px);left:24px;right:auto;max-width:calc(100% - 48px);font-size:9px}
 .ffs-site .ffs-film-toggle{top:calc(var(--ffnav-height,78px) + 76px);right:24px;font-size:10px!important}
 .ffs-site .ffs-hero-people .ffs-hero-media :is(img,video){object-position:82% 45%}
 .ffs-story-copy>p{font-size:15px;line-height:1.85}.ffs-story-copy h3{font-size:31px;margin-top:32px}.ffs-story .ffs-story-lede{font-size:28px}
}
@media(min-width:701px) and (max-height:700px){.ffs-site .ffs-hero{min-height:600px}.ffs-site .ffs-hero h1{font-size:clamp(63px,6.8vw,102px)}.ffs-site .ffs-hero-copy{padding-bottom:38px}}
@media(max-width:360px){.ffs-site .ffs-hero h1{font-size:49px}.ffs-site .ffs-hero-copy>p:not(.ffs-kicker){font-size:14px}.ffs-site .ffs-hero .ffs-kicker{font-size:9px}}

/* Luke's phone films retain their portrait framing in the editorial sections. */
.ffs-site .ffs-hero-luke .ffs-hero-media :is(img,video){object-position:50% 65%;filter:brightness(.76)}
.ffs-site .ffs-hero-team .ffs-hero-media :is(img,video){object-position:50% 40%}
.ffs-client-process{max-width:520px;width:100%;justify-self:center;background:#101416}
.ffs-client-process video{display:block;width:100%;height:auto;max-height:700px;aspect-ratio:9/16;object-fit:contain;background:#101416}
.ffs-client-process>img{aspect-ratio:4/5;object-position:50% 40%}
.ffs-client-process figcaption{position:static;width:auto;max-width:none;margin:0;padding:16px 20px;background:#151b1e;font-size:11px;line-height:1.6}
/* Fill supplied process-film frames without portrait-video letterboxing. */
.ffs-commercial-process,#residential-preparation{scroll-margin-top:110px}
:is(.ffs-commercial-process-frame,.ffs-residential-process-frame){position:relative;width:100%;aspect-ratio:9/16;max-height:700px;overflow:hidden}
:is(.ffs-commercial-process-frame,.ffs-residential-process-frame) :is(img,video){position:absolute;inset:0;width:100%;height:100%!important;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:center;border-radius:0}
:is(.ffs-commercial-process-frame,.ffs-residential-process-frame) .ffs-film-toggle{top:18px;right:18px;bottom:auto;min-height:44px}
:is(.ffs-commercial-process-frame,.ffs-residential-process-frame) [hidden]{display:none!important}
.ffs-residential-process{border:0;box-shadow:none}
.ffs-residential-process-frame :is(img,video){object-position:50% 25%}
@media(max-width:700px){:is(.ffs-commercial-process-frame,.ffs-residential-process-frame){max-height:70svh}:is(.ffs-commercial-process-frame,.ffs-residential-process-frame) video{max-height:none}}
.ffh-luke-client{margin:0;aspect-ratio:4/5;max-width:520px;width:100%;justify-self:center;overflow:hidden;background:#151b1e;isolation:isolate}
.ffh-luke-client :is(img,video){position:absolute;inset:0;width:100%;height:100%!important;object-fit:cover;object-position:50% 50%;filter:saturate(.8) brightness(.88)}
.ffh-luke-client .ffs-film-toggle{top:20px;right:20px;bottom:auto;min-height:44px;z-index:2}
.ffh-luke-client [hidden]{display:none!important}
.ffh-luke-client figcaption{pointer-events:none;color:#f0ede3}
@media(max-width:700px){
 .ffs-site .ffs-hero-luke .ffs-hero-media :is(img,video){position:absolute;inset:-30% auto auto -15%;width:130%;height:130%!important;object-position:50% 50%}
 .ffs-site .ffs-hero-team .ffs-hero-media :is(img,video){object-position:50% 50%}
 .ffs-client-process video{max-height:70svh}
 .ffh-luke-client{max-height:640px}
}

/* Leave room for the larger opening badge above mobile film credits. */
@media(max-width:900px){
 .ffs-site:has(.ffs-opening-brand) .ffs-hero :is(.ffs-film-credit,.ffs-hero-media figcaption){top:132px;left:auto;right:24px;max-width:calc(100% - 180px)}
 .ffs-site:has(.ffs-opening-brand) .ffs-hero .ffs-film-toggle{top:190px;right:24px}
}
@media(max-width:360px){
 .ffs-site:has(.ffs-opening-brand) .ffs-hero :is(.ffs-film-credit,.ffs-hero-media figcaption){top:114px}
}

/* Keep the palette invitation composed on wide desktop screens. */
/* Keep the supplied barbershop floor in view when the portrait image is cropped. */
.ffs-related>a>img[src$="/commercial-barbershop-luke-20261015.webp"]{object-position:center bottom;transform-origin:center bottom}

@media(min-width:1051px){
 .fft-palette,.ffs-palette-preview{padding-inline:max(var(--ffs-rail),calc((100% - 1320px)/2));gap:clamp(24px,2.5vw,40px);grid-template-columns:1.3fr repeat(3,1fr)}
}
