:root{--navy:#0d182e;--navy-deep:#091326;--navy-soft:#13213a;--ivory:#f5f2ee;--muted:#a8b4c8;--muted-2:#71809a;--orange:#f26724;--hair:rgba(224,231,241,.15);--header:76px;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--ivory);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;z-index:1000;top:10px;left:10px;background:var(--ivory);color:var(--navy);padding:10px 14px}a:focus-visible,button:focus-visible{outline:2px solid var(--orange);outline-offset:5px}::selection{background:var(--orange);color:var(--navy)}
.micro{display:inline-block;color:var(--orange);font-size:.72rem;letter-spacing:.27em;font-weight:650;line-height:1.4}.brand-mark{position:relative;z-index:2;display:block;width:145px;height:43px;overflow:hidden;flex:0 0 auto}.brand-mark span{display:block;width:100%;height:100%;background:url('assets/frank-wordmark.png') center center/220px 275px no-repeat}.entry-body{overflow:hidden}.entry-header{position:absolute;inset:0 0 auto;z-index:10;height:110px;display:flex;align-items:center;justify-content:center;padding:0 5vw}.entry-header .brand-mark{width:176px;height:48px}.entry-header .brand-mark span{background-size:260px 325px}.entry-world{position:absolute;right:5.3vw;top:50%;transform:translateY(-50%);font-size:.68rem;letter-spacing:.19em;font-weight:650;color:rgba(245,242,238,.66);transition:color .3s}.entry-world:hover{color:var(--ivory)}.entry-world span{font-size:1rem;margin-left:8px}.entry{position:relative;min-height:100svh;height:100svh;overflow:hidden;background:var(--navy) url('assets/frank-hero-desktop.png') center center/cover no-repeat}.entry:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(8,17,34,.13),transparent 75%),linear-gradient(0deg,rgba(8,17,34,.34),transparent 30%)}.entry-grain{position:absolute;inset:0;opacity:.11;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.4' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E")}.entry-roles{position:absolute;z-index:3;left:50%;top:54%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:clamp(1.6rem,5vw,5.7rem);width:max-content;max-width:95vw}.entry-roles a{position:relative;display:block;min-width:max-content;padding:1.65rem .15rem;font-size:clamp(1.7rem,2.6vw,2.65rem);font-weight:300;letter-spacing:-.035em;line-height:1.1;text-align:center;color:rgba(246,244,241,.8);transition:color .36s,transform .46s cubic-bezier(.2,.8,.2,1)}.entry-roles a:hover,.entry-roles a:focus-visible,.entry-roles a.is-touching{color:var(--ivory);transform:translateY(-5px)}.entry-name{display:block}.entry-question{position:absolute;left:50%;top:-.1rem;transform:translate(-50%,9px);opacity:0;white-space:nowrap;color:var(--orange);font-size:.62rem;letter-spacing:.28em;font-weight:650;transition:opacity .28s,transform .38s}.entry-roles a:hover .entry-question,.entry-roles a:focus-visible .entry-question,.entry-roles a.is-touching .entry-question{opacity:1;transform:translate(-50%,0)}.entry-corner{position:absolute;z-index:3;bottom:5.2vh;left:5.5vw;color:rgba(238,241,246,.5);font-size:.6rem;letter-spacing:.19em}.entry-corner.right{left:auto;right:5.5vw}.entry-body.is-leaving .entry{filter:brightness(.65);transform:scale(1.025);transition:filter .55s,transform .7s}.entry-body.is-leaving .entry-roles{opacity:0;transform:translate(-50%,-46%);transition:opacity .45s,transform .5s}
.inner-header{position:sticky;z-index:80;top:0;height:var(--header);background:rgba(9,19,38,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}.inner-header-row{height:100%;max-width:1800px;margin:auto;padding:0 clamp(24px,4.2vw,82px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.role-nav{display:flex;align-items:center;gap:clamp(1.35rem,3.2vw,3.2rem)}.nav-flip{position:relative;display:block;overflow:hidden;height:1.35rem;font-size:.75rem;font-weight:600;letter-spacing:.12em;white-space:nowrap;color:var(--muted)}.nav-flip span{display:block;line-height:1.35rem;transition:transform .38s cubic-bezier(.22,.8,.2,1)}.nav-flip span:last-child{position:absolute;top:100%;left:0;color:var(--orange)}.nav-flip:hover span,.nav-flip:focus-visible span{transform:translateY(-100%)}.nav-flip.selected{color:var(--ivory)}.world-link{justify-self:end;font-size:.72rem;font-weight:650;letter-spacing:.17em;color:var(--muted);transition:color .3s}.world-link span{font-size:1rem;padding-left:8px}.world-link:hover,.world-link.selected{color:var(--orange)}.mobile-nav-toggle,.mobile-role-nav{display:none}
.role-page{background:var(--navy)}.decision-stage{min-height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 14% 30%,rgba(46,65,100,.33),transparent 42%),linear-gradient(115deg,#0d182e,#0b162a 65%,#0f1b33);overflow:hidden}.decision-main{width:100%;max-width:1720px;margin:auto;padding:clamp(2.4rem,6vh,5.5rem) clamp(24px,6vw,110px) 1rem;display:grid;grid-template-columns:minmax(280px,.87fr) minmax(470px,1.13fr);gap:clamp(3rem,8vw,10rem);align-items:center;flex:1}.decision-intro h1{font-size:clamp(3.35rem,6.25vw,7.4rem);letter-spacing:-.079em;font-weight:300;line-height:.99;margin:1.25rem 0 1.65rem;max-width:10ch}.decision-intro h1 em{font-style:normal;color:#cbd5e5}.decision-intro>p{max-width:480px;color:#b3bfd0;font-size:clamp(1rem,1.22vw,1.28rem);line-height:1.55;font-weight:300}.decision-cue{display:block;margin-top:3rem;color:var(--muted-2);font-size:.64rem;letter-spacing:.2em;font-weight:600}.decision-cue span{color:var(--orange);margin-left:1rem}.offers{width:100%;align-self:center}.offers-label{display:flex;justify-content:space-between;gap:15px;color:var(--orange);font-size:.65rem;font-weight:650;letter-spacing:.2em;padding:0 0 1rem}.offers-label span{color:var(--muted-2)}.offer-row{width:100%;border:0;border-top:1px solid var(--hair);background:transparent;text-align:left;padding:clamp(1.12rem,2.45vh,1.8rem) .15rem;display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto 1.8rem;gap:clamp(.7rem,1.4vw,1.3rem);align-items:center;cursor:pointer;transition:background .3s,padding .3s}.offer-row:last-child{border-bottom:1px solid var(--hair)}.offer-row:hover,.offer-row:focus-visible{background:rgba(255,255,255,.035);padding-left:1rem;padding-right:.6rem}.offer-index{color:var(--orange);font-size:.68rem;font-weight:650;letter-spacing:.12em}.offer-main strong{display:block;font-size:clamp(1.16rem,1.65vw,1.82rem);font-weight:450;letter-spacing:-.035em;line-height:1.16}.offer-main small{display:block;margin-top:.47rem;color:var(--muted);font-size:.82rem;font-weight:350;line-height:1.35}.offer-meta{font-size:.66rem;color:#9eacc2;letter-spacing:.13em;font-weight:650;white-space:nowrap}.offer-arrow{font-size:1.15rem;color:var(--orange);transition:transform .3s}.offer-row:hover .offer-arrow{transform:translate(3px,-3px)}.stage-end{display:flex;justify-content:space-between;align-items:center;padding:0 clamp(24px,6vw,110px) 2rem;color:var(--muted-2);font-size:.6rem;letter-spacing:.18em}.stage-end a{color:var(--ivory);transition:color .3s}.stage-end a:hover{color:var(--orange)}.stage-end a span{margin-left:.5rem;color:var(--orange)}
.proof-intro{min-height:70svh;display:flex;align-items:center;background:var(--navy-deep);padding:7rem 6vw}.proof-intro-inner{max-width:1240px;margin:auto;width:100%}.proof-intro h2{font-size:clamp(3.4rem,7.2vw,9.2rem);letter-spacing:-.077em;font-weight:300;line-height:1.02;margin:1.4rem 0;max-width:11ch}.proof-intro p{max-width:570px;margin-left:auto;color:var(--muted);font-size:clamp(1rem,1.35vw,1.35rem);line-height:1.55;font-weight:300}.reveal{opacity:0;transform:translateY(42px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.in-view{opacity:1;transform:none}.proof-scroll{height:245svh;background:#0a152a}.proof-viewport{position:sticky;top:var(--header);height:calc(100svh - var(--header));overflow:hidden;display:flex;flex-direction:column;justify-content:center}.proof-topline{display:flex;justify-content:space-between;margin:0 6vw 1.4rem;color:var(--muted-2);font-size:.62rem;letter-spacing:.2em}.proof-topline b{color:var(--orange);font-size:1rem}.proof-track{display:flex;align-items:center;gap:1.3vw;width:max-content;padding:0 6vw;will-change:transform}.proof-slide{position:relative;width:min(76vw,1120px);height:min(67svh,650px);min-height:350px;overflow:hidden;border-radius:3px;background:var(--navy-soft);flex:none}.proof-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:saturate(.82)}.slide-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,14,29,.94),rgba(7,14,29,.14) 62%),linear-gradient(90deg,rgba(7,14,29,.34),transparent)}.slide-copy{position:absolute;z-index:2;bottom:clamp(1.7rem,5vw,4.5rem);left:clamp(1.7rem,5vw,4.5rem);max-width:670px}.slide-copy>span{font-size:.68rem;letter-spacing:.2em;color:var(--orange);font-weight:650}.slide-copy h3{font-size:clamp(2.5rem,5vw,6rem);line-height:1;letter-spacing:-.07em;font-weight:320;margin:1.1rem 0}.slide-copy p{max-width:580px;color:#ccd5e2;line-height:1.5;font-size:1rem}.slide-copy a{display:inline-block;margin-top:1rem;padding-bottom:.4rem;border-bottom:1px solid rgba(255,255,255,.45);font-size:.72rem;letter-spacing:.16em;font-weight:650;transition:color .3s,border-color .3s}.slide-copy a:hover{color:var(--orange);border-color:var(--orange)}.proof-product{background:linear-gradient(120deg,#203351,#0a1428)}.proof-product>img{left:auto;width:55%;object-fit:contain;object-position:center;filter:none}.proof-product .slide-shade{background:linear-gradient(90deg,rgba(8,18,35,.99),rgba(8,18,35,.9) 42%,rgba(8,18,35,.1) 75%)}.proof-product .slide-copy{max-width:48%}.proof-authority{background:radial-gradient(circle at 70% 30%,#213758,#0a1428 57%)}.authority-orbit{position:absolute;font-weight:750;font-size:clamp(14rem,31vw,32rem);letter-spacing:-.1em;right:0;top:14%;color:rgba(255,255,255,.045);line-height:1;transform:rotate(-8deg)}.proof-progress,.press-progress{height:2px;background:rgba(255,255,255,.13);margin:1.7rem 6vw 0}.proof-progress span,.press-progress span{display:block;width:0;height:100%;background:var(--orange);transition:width .05s linear}
.role-evidence{background:var(--navy);padding:clamp(6rem,12vw,13rem) clamp(24px,6vw,110px)}.evidence-inner{max-width:1450px;margin:auto}.network-proof{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);gap:6vw;align-items:center;padding-bottom:clamp(6rem,11vw,12rem)}.network-proof>div:first-child strong{display:block;font-size:clamp(7rem,15vw,16rem);font-weight:250;letter-spacing:-.12em;line-height:.95;margin:1rem 0}.network-proof>div:first-child strong span{color:var(--orange);font-size:.55em;vertical-align:top}.network-proof p{max-width:320px;color:var(--muted);line-height:1.5}.logo-mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}.logo-mosaic>div{height:92px;display:flex;align-items:center;justify-content:center;padding:18px;background:#101e35}.logo-mosaic img{max-height:42px;max-width:100%;object-fit:contain;filter:grayscale(1) brightness(1.45);opacity:.7;transition:filter .3s,opacity .3s}.logo-mosaic>div:hover img{filter:none;opacity:1}.stack-proof{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;padding-bottom:clamp(6rem,11vw,12rem)}.old-stack,.new-stack{position:relative;min-height:400px;padding:3.5rem;background:#111e35}.old-stack>span,.new-stack>span{color:var(--orange);font-size:.67rem;font-weight:700;letter-spacing:.18em}.old-stack p{font-size:clamp(1.3rem,2.4vw,2.5rem);letter-spacing:-.05em;color:#8f9bae;margin:1.5rem 0}.old-stack b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--orange);font-size:clamp(17rem,28vw,27rem);font-weight:200;line-height:1;text-shadow:0 0 30px rgba(242,103,36,.17)}.new-stack{background:radial-gradient(circle at 85% 15%,#203555,#101e35 65%);display:flex;flex-direction:column;justify-content:space-between}.new-stack strong{font-size:clamp(2.8rem,5vw,5.9rem);line-height:.95;font-weight:300;letter-spacing:-.07em}.proof-actions{display:flex;flex-direction:column;gap:1rem}.proof-actions span{font-size:clamp(3.2rem,7.5vw,8rem);line-height:1;letter-spacing:-.08em;font-weight:250}.proof-actions span:nth-child(2){color:#9fb0c9}.proof-actions span:nth-child(3){color:var(--orange)}.editorial-proof{display:grid;grid-template-columns:1fr 1fr;column-gap:5vw;align-items:end;border-top:1px solid var(--hair);padding-top:3.5rem}.editorial-proof>.micro{grid-column:1/-1}.editorial-proof h2{grid-column:1;font-size:clamp(3.3rem,6vw,7rem);line-height:1;letter-spacing:-.075em;font-weight:300;margin:1.7rem 0 0}.editorial-proof h2 em{font-style:normal;color:#b9c6d8}.editorial-proof>p{grid-column:2;color:var(--muted);font-size:1.15rem;line-height:1.5}.editorial-proof>div{grid-column:2;display:flex;gap:1.6rem;flex-wrap:wrap;margin-top:1.8rem}.editorial-proof a{font-size:.72rem;letter-spacing:.15em;font-weight:650;padding:0 0 .6rem;border-bottom:1px solid var(--hair);transition:color .3s}.editorial-proof a:hover{color:var(--orange)}.editorial-proof a span{color:var(--orange);margin-left:.5rem}
.final-stage{position:relative;min-height:100svh;background:radial-gradient(circle at 80% 30%,#1b3052,var(--navy-deep) 55%);display:flex;align-items:center;justify-content:center;overflow:hidden;padding:8rem 6vw 6rem}.final-orbit{position:absolute;width:65vw;height:65vw;max-width:900px;max-height:900px;border-radius:50%;border:1px solid rgba(255,255,255,.07);right:-12vw;top:-20vw;box-shadow:0 0 0 10vw rgba(255,255,255,.012),0 0 0 20vw rgba(255,255,255,.008)}.final-content{position:relative;z-index:2;width:100%;max-width:1160px}.final-content h2{font-size:clamp(3.7rem,8vw,10rem);line-height:.98;letter-spacing:-.08em;font-weight:280;max-width:11ch;margin:1.5rem 0 2rem}.final-content p{max-width:550px;color:#b9c5d5;font-size:1.1rem;line-height:1.55}.primary-action{display:inline-flex;align-items:center;justify-content:space-between;gap:4rem;background:var(--orange);color:#0d182e;padding:1.2rem 1.5rem;min-width:270px;margin-top:2.2rem;font-size:.73rem;font-weight:750;letter-spacing:.13em;transition:background .3s,transform .3s}.primary-action:hover{background:#ff894d;transform:translateY(-3px)}.primary-action span{font-size:1.2rem;font-weight:350}.final-foot{position:absolute;left:6vw;right:6vw;bottom:2.2rem;display:flex;justify-content:space-between;gap:1rem;color:var(--muted-2);font-size:.63rem;letter-spacing:.17em}.final-foot a{color:var(--ivory)}.final-foot a:hover{color:var(--orange)}
.detail-dialog{border:0;padding:0;background:transparent;color:var(--ivory);max-width:none;max-height:none;width:100vw;height:100svh;margin:0}.detail-dialog::backdrop{background:rgba(3,8,18,.85);backdrop-filter:blur(12px)}.dialog-panel{height:100%;width:min(100%,860px);margin-left:auto;background:radial-gradient(circle at 100% 0,#1d3150,#0d182e 65%);display:flex;flex-direction:column;padding:clamp(1.4rem,4vw,3.8rem);box-shadow:-30px 0 100px rgba(0,0,0,.25);animation:dialog-in .5s cubic-bezier(.2,.8,.2,1)}@keyframes dialog-in{from{transform:translateX(6%);opacity:.7}to{transform:none;opacity:1}}.dialog-header{display:flex;justify-content:space-between;align-items:center;color:var(--orange);font-size:.68rem;letter-spacing:.2em;font-weight:700}.dialog-close{border:1px solid var(--hair);background:transparent;width:48px;height:48px;cursor:pointer;font-size:1.7rem;font-weight:250;line-height:1;transition:background .3s}.dialog-close:hover{background:rgba(255,255,255,.1)}.dialog-body{margin:auto 0;max-width:650px}.dialog-body h2{font-size:clamp(3.2rem,6.6vw,6.4rem);line-height:1;letter-spacing:-.075em;font-weight:300;margin:1.4rem 0 2rem}.dialog-body>p{font-size:clamp(1.1rem,1.7vw,1.5rem);font-weight:300;line-height:1.5;color:#c8d1df}.dialog-body ul{padding:0;margin:2.3rem 0;list-style:none}.dialog-body li{border-top:1px solid var(--hair);padding:.75rem 0;color:var(--muted);font-size:.9rem;line-height:1.4}.dialog-body li:last-child{border-bottom:1px solid var(--hair)}.dialog-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem}.dialog-foot .primary-action{margin:0}.dialog-foot>span{max-width:180px;color:var(--muted-2);font-size:.61rem;letter-spacing:.1em;line-height:1.5}
.world-page{background:var(--navy)}.world-hero{position:relative;min-height:calc(100svh - var(--header));padding:clamp(5rem,10vh,10rem) 7vw 4rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;overflow:hidden;background:linear-gradient(90deg,rgba(8,17,34,.88),rgba(8,17,34,.42)),url('assets/frank-hero-desktop.png') center/cover no-repeat}.world-hero h1{font-size:clamp(5rem,11vw,13rem);font-weight:270;line-height:.9;letter-spacing:-.085em;margin:1.6rem 0 2rem}.world-hero h1 em{font-style:normal;color:#cbd6e5}.world-hero p{color:var(--muted);font-size:1.25rem;font-weight:300}.world-hero>a{font-size:.72rem;letter-spacing:.17em;font-weight:650;margin-top:3rem;border-bottom:1px solid var(--hair);padding-bottom:.65rem}.world-hero>a span{color:var(--orange);margin-left:1rem}.world-hero-mark{position:absolute;right:2vw;bottom:-12vw;font-size:57vw;line-height:1;font-weight:700;letter-spacing:-.18em;color:rgba(255,255,255,.025);pointer-events:none}.world-inner{max-width:1500px;margin:auto}.films-section{padding:clamp(6rem,11vw,12rem) 6vw;background:#0a152a}.world-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:2rem;margin-bottom:4rem}.world-heading>.micro{grid-column:1/-1}.world-heading h2{font-size:clamp(3.5rem,7vw,8rem);line-height:1;letter-spacing:-.075em;font-weight:300;margin:0}.world-heading p{color:var(--muted);font-size:1.1rem;line-height:1.5;max-width:400px}.film-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem 1.5rem}.film-card{display:block}.film-image{position:relative;overflow:hidden;aspect-ratio:1.65;background:#1c2940}.film-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,14,28,.52),transparent 55%)}.film-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .8s;filter:saturate(.85)}.film-card:hover img{transform:scale(1.055);filter:saturate(1)}.film-image span{position:absolute;z-index:2;left:1.5rem;bottom:1.35rem;letter-spacing:.16em;font-size:.7rem;font-weight:700}.film-caption{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;padding-top:1.1rem}.film-caption span{font-size:.62rem;letter-spacing:.17em;color:var(--orange);white-space:nowrap}.film-caption strong{font-size:clamp(1.15rem,1.8vw,1.8rem);font-weight:400;text-align:right;letter-spacing:-.04em}.world-press-title{padding:9rem 6vw 4rem;background:var(--navy)}.world-press-title h2{font-size:clamp(5rem,11vw,13rem);font-weight:270;letter-spacing:-.085em;line-height:.9;margin:1.3rem 0}.world-press-title h2 em{font-style:normal;color:var(--orange)}.world-press-title p{color:var(--muted);font-size:1.1rem}.press-scroll{height:230svh;background:var(--navy)}.press-viewport{position:sticky;top:var(--header);height:calc(100svh - var(--header));display:flex;flex-direction:column;justify-content:center;overflow:hidden}.press-track{display:flex;align-items:stretch;gap:1.3rem;width:max-content;padding:0 6vw;will-change:transform}.press-card{height:min(62svh,550px);min-height:350px;width:min(44vw,620px);flex:none;padding:clamp(2rem,4vw,4rem);background:#15243e;display:flex;flex-direction:column;justify-content:space-between;transition:background .3s}.press-card:hover{background:#213655}.press-n{color:var(--muted-2);font-size:.75rem;letter-spacing:.15em}.press-card h3{font-size:clamp(2rem,3.7vw,4.5rem);line-height:1.04;letter-spacing:-.07em;font-weight:330;margin:1rem 0}.press-card footer{border-top:1px solid var(--hair);padding-top:1rem;display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.14em;font-weight:700}.press-card footer span{color:var(--orange);font-size:1.1rem}.world-end{padding:clamp(9rem,15vw,17rem) 6vw 6rem;background:radial-gradient(circle at 75% 30%,#1b3151,#091326 65%)}.world-end h2{font-size:clamp(4.5rem,9vw,10rem);letter-spacing:-.08em;font-weight:270;margin:1.4rem 0}.world-end p{color:var(--muted);font-size:1.2rem}.world-return{display:flex;gap:2rem;flex-wrap:wrap;margin-top:10rem;padding-top:1.5rem;border-top:1px solid var(--hair);font-size:.7rem;font-weight:650;letter-spacing:.15em}.world-return a:hover{color:var(--orange)}
@media (max-width:1050px){.decision-main{grid-template-columns:minmax(260px,.8fr) minmax(430px,1.2fr);gap:3rem;padding-left:4vw;padding-right:4vw}.decision-intro h1{font-size:clamp(3rem,6vw,5.8rem)}.offer-meta{font-size:.6rem}.offer-main small{font-size:.75rem}.entry-roles{gap:3vw}}
@media (max-width:780px){:root{--header:67px}.inner-header-row{grid-template-columns:1fr auto auto;padding:0 20px}.role-nav{display:none}.mobile-nav-toggle{display:block;border:0;background:transparent;color:var(--ivory);letter-spacing:.16em;font-size:.68rem;padding:12px;cursor:pointer}.world-link{font-size:.66rem}.mobile-role-nav{display:flex;position:absolute;top:var(--header);left:0;right:0;background:#0b162a;border-bottom:1px solid var(--hair);padding:1.5rem 20px 2rem;flex-direction:column;gap:1.1rem}.mobile-role-nav[hidden]{display:none}.mobile-role-nav .nav-flip{height:auto;overflow:visible;font-size:1.4rem;letter-spacing:-.03em}.mobile-role-nav .nav-flip span:last-child{display:none}.mobile-role-nav>a:last-child{color:var(--orange);font-size:.7rem;letter-spacing:.16em;margin-top:.5rem}.entry{background-image:url('assets/frank-hero-mobile.png');background-position:center center}.entry-header{height:92px;justify-content:flex-start;padding:0 6vw}.entry-header .brand-mark{width:156px}.entry-world{right:6vw;font-size:.57rem}.entry-roles{top:43%;left:7vw;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:auto}.entry-roles a{font-size:clamp(2.7rem,8vw,4.3rem);text-align:left;padding:.55rem 0}.entry-question{left:0;top:-.42rem;transform:translateY(7px);font-size:.56rem}.entry-roles a:hover .entry-question,.entry-roles a:focus-visible .entry-question,.entry-roles a.is-touching .entry-question{transform:translateY(0)}.entry-corner{left:7vw;bottom:5vh}.entry-corner.right{display:none}.decision-stage{min-height:0}.decision-main{display:block;padding:3.2rem 6vw 2rem}.decision-intro h1{font-size:clamp(3.3rem,11vw,6rem);max-width:14ch;margin:1rem 0}.decision-intro>p{font-size:1rem}.decision-cue{margin:2rem 0 3rem}.offers-label{padding-bottom:.65rem}.offer-row{grid-template-columns:1.8rem 1fr auto;gap:.7rem;padding:1.25rem 0}.offer-meta{grid-column:2;grid-row:2;justify-self:start;font-size:.6rem}.offer-arrow{grid-column:3;grid-row:1/3}.offer-main strong{font-size:1.3rem}.offer-main small{font-size:.8rem}.stage-end{padding:0 6vw 1.7rem}.proof-intro{min-height:55svh;padding:6rem 6vw}.proof-intro h2{font-size:clamp(3.3rem,9vw,6rem)}.proof-intro p{margin-left:0}.proof-scroll,.press-scroll{height:auto;padding:0 0 5rem}.proof-viewport,.press-viewport{position:relative;top:auto;height:auto;display:block;overflow:visible}.proof-topline{margin:0 6vw 1.4rem}.proof-track,.press-track{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding:0 6vw 1.2rem;transform:none!important;-webkit-overflow-scrolling:touch;scrollbar-width:none}.proof-track::-webkit-scrollbar,.press-track::-webkit-scrollbar{display:none}.proof-slide{width:86vw;height:62svh;min-height:420px;scroll-snap-align:center}.proof-product .slide-copy{max-width:76%}.proof-product>img{width:74%;opacity:.54}.proof-progress,.press-progress{display:none}.role-evidence{padding:6rem 6vw}.network-proof,.stack-proof{grid-template-columns:1fr;gap:3rem}.logo-mosaic{grid-template-columns:repeat(3,1fr)}.logo-mosaic>div{height:86px}.old-stack,.new-stack{min-height:300px}.editorial-proof{grid-template-columns:1fr}.editorial-proof h2,.editorial-proof>p,.editorial-proof>div{grid-column:1}.final-stage{min-height:85svh}.final-content h2{font-size:clamp(3.8rem,10vw,7rem)}.world-hero{background-image:linear-gradient(90deg,rgba(8,17,34,.86),rgba(8,17,34,.5)),url('assets/frank-hero-mobile.png');background-position:center}.film-grid{gap:2.5rem 1rem}.film-caption{display:block}.film-caption strong{text-align:left;display:block;margin-top:.6rem}.world-heading{display:block}.world-press-title{padding-top:6rem}.press-card{width:77vw;height:54svh;scroll-snap-align:center}}
@media (max-width:540px){.entry-header .brand-mark{width:140px}.entry-world{font-size:.5rem}.entry-roles{top:40%}.entry-roles a{font-size:clamp(2.5rem,10vw,3.5rem)}.entry-corner{font-size:.5rem}.decision-main{padding-top:2.4rem}.decision-intro h1{font-size:clamp(3rem,13vw,4.8rem)}.decision-intro>p{font-size:.95rem}.decision-cue{font-size:.54rem;margin-bottom:2rem}.offer-main strong{font-size:1.15rem}.offer-main small{font-size:.76rem}.offer-meta{font-size:.54rem}.stage-end span:first-child{display:none}.stage-end{justify-content:flex-end}.proof-intro h2{font-size:3.6rem}.proof-slide{width:88vw;height:64svh;min-height:380px}.slide-copy{bottom:1.8rem;left:1.7rem;right:1.5rem}.slide-copy h3{font-size:clamp(2.4rem,9vw,3.6rem)}.slide-copy p{font-size:.85rem}.proof-product .slide-copy{max-width:none}.proof-product>img{width:100%;opacity:.36}.network-proof>div:first-child strong{font-size:8rem}.logo-mosaic{grid-template-columns:repeat(3,1fr)}.logo-mosaic>div{height:75px;padding:10px}.logo-mosaic img{max-height:30px}.stack-proof{gap:1rem}.old-stack,.new-stack{min-height:280px;padding:2rem}.old-stack p{font-size:1.4rem;margin:1rem 0}.old-stack b{font-size:15rem}.editorial-proof h2{font-size:clamp(3.1rem,11vw,4.8rem)}.dialog-panel{padding:1.35rem}.dialog-body h2{font-size:clamp(3rem,12vw,4.8rem)}.dialog-body>p{font-size:1rem}.dialog-foot{display:block}.dialog-foot>span{display:block;margin-top:1.5rem}.world-hero h1{font-size:clamp(4.7rem,17vw,7rem)}.films-section{padding:5rem 6vw}.world-heading h2{font-size:3.5rem}.film-grid{grid-template-columns:1fr}.film-image{aspect-ratio:1.55}.film-caption strong{font-size:1.35rem}.world-press-title h2{font-size:clamp(4.5rem,16vw,7rem)}.press-card{width:86vw;min-height:380px}.press-card h3{font-size:clamp(2rem,8vw,3.3rem)}.world-return{margin-top:6rem}}

/* Keep the full FRANK mark visible and let long offer details scroll within the panel. */
.dialog-panel{overflow-y:auto;min-height:0;overscroll-behavior:contain}
.dialog-header,.dialog-foot{flex:none}
.dialog-body{flex:none;margin:clamp(1.5rem,4vh,3rem) 0 1.5rem}
.dialog-body h2{font-size:clamp(3rem,5.8vw,5.5rem);margin:1rem 0 1.25rem}
.dialog-body ul{margin:1.4rem 0}
@media (max-width:540px){.entry-header .brand-mark span{background-size:215px 269px}.decision-cue{margin:1.4rem 0 1.6rem}.offer-row{padding:.95rem 0}.dialog-body{margin:1.4rem 0}.dialog-body h2{font-size:clamp(2.7rem,11vw,4.2rem)}}
@media (max-height:670px) and (min-width:781px){.decision-main{padding-top:1.6rem}.decision-intro h1{font-size:clamp(3rem,5.4vw,5.9rem);margin:.9rem 0}.decision-cue{margin-top:1.8rem}.offer-row{padding:.8rem .15rem}.offer-main small{margin-top:.25rem}.stage-end{padding-bottom:1rem}.proof-slide{height:65svh;min-height:340px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.proof-scroll,.press-scroll{height:auto}.proof-viewport,.press-viewport{position:relative;top:auto;height:auto;overflow:visible}.proof-track,.press-track{width:auto;overflow-x:auto;transform:none!important;padding-bottom:1rem}.proof-progress,.press-progress{display:none}}

/* Editorial network scene: selected developer marks, without a logo table. */
.developer-page .role-evidence{padding-top:0}
.developer-page .evidence-inner{max-width:none}
.network-proof,.world-press-title{scroll-margin-top:var(--header)}
.network-proof{display:block;position:relative;height:165svh;padding:0;margin:0 calc(-1 * clamp(24px,6vw,110px)) clamp(6rem,9vw,10rem)}
.network-scene{position:sticky;top:var(--header);height:calc(100svh - var(--header));overflow:hidden;display:flex;flex-direction:column;padding:clamp(1.8rem,3vw,3.5rem) 6vw;background:radial-gradient(circle at 52% 50%,#203450 0,#111f38 35%,#0c172c 77%)}
.network-scene:before{content:"";position:absolute;inset:8% 24%;border:1px solid rgba(242,239,234,.045);border-radius:50%;transform:scale(1.35);pointer-events:none}
.network-top,.network-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;gap:1rem;color:#a3afc2;font-size:.61rem;letter-spacing:.23em;font-weight:650}
.network-top span:last-child,.network-bottom span:last-child{color:var(--orange)}
.network-center{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:4vw;flex:1}
.network-count{font-size:clamp(12rem,29vw,33rem);font-weight:220;line-height:.75;letter-spacing:-.115em;color:var(--ivory);white-space:nowrap}
.network-count sup{font-size:.27em;line-height:1;color:var(--orange);vertical-align:top;position:relative;top:.06em;margin-left:.03em}
.network-message{max-width:380px;font-size:clamp(2rem,3.35vw,4.1rem);font-weight:300;line-height:1.05;letter-spacing:-.065em}
.network-message em{font-style:normal;color:#a8b7ca}
.developer-lines{position:relative;z-index:2;margin:0 -6vw 2rem;padding:1.2rem 0 1.4rem;border-top:1px solid rgba(238,240,245,.15);border-bottom:1px solid rgba(238,240,245,.15);overflow:hidden;display:flex;flex-direction:column;gap:1rem}
.developer-line{width:max-content;display:flex;align-items:center;gap:clamp(4rem,10vw,10rem);padding:0 6vw;will-change:transform}
.developer-line.line-one{transform:translate3d(calc(-1 * var(--network-one,0px)),0,0)}
.developer-line.line-two{transform:translate3d(calc(-1 * var(--network-two,0px)),0,0)}
.developer-signature{display:inline-flex;align-items:center;gap:1rem;flex:none;color:#e9edf3;font-size:clamp(1.45rem,2.15vw,2.5rem);font-weight:320;letter-spacing:-.05em;white-space:nowrap}
.signature-mark{width:clamp(40px,4.3vw,58px);height:clamp(40px,4.3vw,58px);border-radius:50%;background:#eceae5;overflow:hidden;display:flex;align-items:center;justify-content:center;flex:none;box-shadow:0 0 25px rgba(234,237,242,.055)}
.signature-mark img{width:100%;height:100%;object-fit:contain;display:block}
.network-bottom{margin-top:auto}

/* Film archive: one cinematic lead, then a smaller screening wall. */
.film-grid{display:flex;flex-direction:column;gap:0}
.film-card:first-child{margin-bottom:clamp(3rem,6vw,6rem)}
.film-card:not(:first-child){display:grid;grid-template-columns:minmax(180px,30%) 1fr;gap:clamp(2rem,5vw,6rem);align-items:center;border-top:1px solid rgba(239,241,246,.16);padding:1.4rem 0}
.film-card:last-child{border-bottom:1px solid rgba(239,241,246,.16)}
.film-card:not(:first-child) .film-image{aspect-ratio:1.95;max-height:220px}
.film-card:not(:first-child) .film-overprint{display:none}
.film-card:not(:first-child) .film-caption{display:block;padding:0}
.film-card:not(:first-child) .film-caption strong{display:block;text-align:left;font-size:clamp(2.1rem,3.4vw,4.7rem);font-weight:300;line-height:1.02;margin-top:.7rem}
.film-image{aspect-ratio:1.82;background:#13233d}
.film-card:first-child .film-image{aspect-ratio:2.35;max-height:75svh}
.film-image:after{background:linear-gradient(0deg,rgba(5,12,25,.83),rgba(5,12,25,.08) 60%),linear-gradient(90deg,rgba(5,12,25,.18),transparent 75%)}
.film-image img{filter:saturate(.63) contrast(1.07);transform:scale(1.025)}
.film-card:hover .film-image img{transform:scale(1.075);filter:saturate(.94) contrast(1.05)}
.film-image .film-index{top:clamp(1.3rem,3vw,2.7rem);left:clamp(1.3rem,3vw,2.7rem);bottom:auto;color:#dbe3f0}
.film-image .film-play{left:auto;right:clamp(1.3rem,3vw,2.7rem);bottom:clamp(1.3rem,3vw,2.7rem);color:var(--ivory)}
.film-overprint{position:absolute;z-index:2;left:clamp(1.3rem,3vw,2.7rem);bottom:clamp(1.3rem,3vw,2.7rem);max-width:75%;font-size:clamp(2.2rem,3.9vw,5rem);font-weight:280;letter-spacing:-.07em;line-height:.98}
.film-card:first-child .film-overprint{font-size:clamp(4rem,7vw,9rem)}
.film-card:first-child .film-caption strong{display:none}

/* Full-screen editorial press chapters. The horizontal movement reveals one story at a time. */
.world-press-title{min-height:75svh;display:flex;align-items:center;padding-top:8rem;padding-bottom:7rem;background:radial-gradient(circle at 85% 20%,#1b2b46,#0d182e 52%)}
.world-press-title .world-inner{width:100%}
.press-scroll{height:455svh;background:#0b162b}
.press-viewport{position:sticky;top:var(--header);height:calc(100svh - var(--header));display:block;overflow:hidden}
.press-track{height:100%;display:flex;align-items:stretch;gap:0;width:max-content;padding:0;will-change:transform}
.press-card{position:relative;width:100vw;height:100%;min-height:0;overflow:hidden;flex:none;padding:clamp(1.7rem,3vw,3.5rem) clamp(2rem,6vw,7rem);display:flex;flex-direction:column;justify-content:space-between;isolation:isolate;transition:none}
.press-card,.press-card:hover{background:#0d1a30}
.press-card-02,.press-card-02:hover{background:radial-gradient(circle at 75% 36%,#263652,#101c32 54%,#0b172b)}
.press-card-03,.press-card-03:hover{background:radial-gradient(circle at 80% 15%,#263047,#0a162b 57%)}
.press-card-04,.press-card-04:hover{background:radial-gradient(circle at 65% 75%,#202b43,#0e1a30 58%)}
.press-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,15,29,.12),transparent 55%);pointer-events:none}
.press-card-top,.press-card-bottom{position:relative;z-index:3;display:flex;justify-content:space-between;gap:1rem;color:#a9b6c8;font-size:.64rem;font-weight:650;letter-spacing:.23em}
.press-card-bottom{border-top:1px solid rgba(238,240,245,.2);padding-top:1rem}
.press-card-art{position:absolute;z-index:0;right:5vw;top:9%;width:44vw;height:79%;display:flex;align-items:center;justify-content:center;color:rgba(233,238,247,.055);font-size:min(59vw,790px);font-weight:200;line-height:1;letter-spacing:-.18em;transform:translate3d(var(--art-drift,0px),0,0);transition:transform .14s linear;pointer-events:none}
.press-card-art i{position:absolute;inset:12% 0 8% 0;border:1px solid rgba(235,240,247,.1);border-radius:50%;transform:rotate(-25deg) scaleX(.84)}
.press-card-02 .press-card-art{color:rgba(245,149,77,.08)}
.press-card-03 .press-card-art{right:-2vw;transform:translate3d(var(--art-drift,0px),0,0) rotate(12deg)}
.press-card-04 .press-card-art{color:rgba(240,240,244,.075)}
.press-card-copy{position:relative;z-index:2;max-width:min(1100px,84vw);margin:auto 0;transform:translate3d(0,var(--copy-drift,0px),0);opacity:var(--copy-opacity,1);transition:transform .16s linear,opacity .16s linear}
.press-kind{display:inline-block;color:var(--orange);font-size:.72rem;letter-spacing:.22em;font-weight:650;text-transform:uppercase;margin-bottom:1.9rem}
.press-outlet{display:block;color:#aebbd0;font-size:.76rem;font-weight:650;letter-spacing:.28em;margin-bottom:1rem}
.press-card h3{font-size:clamp(3.8rem,6.7vw,9rem);line-height:.99;letter-spacing:-.08em;font-weight:270;max-width:15ch;margin:0 0 2rem}
.press-read{display:inline-flex;align-items:center;gap:3rem;border-bottom:1px solid rgba(241,244,249,.5);padding-bottom:.75rem;font-size:.73rem;letter-spacing:.2em;font-weight:650}
.press-read b{color:var(--orange);font-size:1.3rem;font-weight:300}
.press-progress{position:absolute;z-index:5;left:0;bottom:0;width:100%;height:2px;background:rgba(226,231,239,.13)}
.press-progress span{display:block;height:100%;background:var(--orange);width:0}
.press-stage-label{position:absolute;z-index:5;right:6vw;bottom:1.8rem;display:flex;gap:1.4rem;color:#aab7c8;font-size:.61rem;letter-spacing:.19em;font-weight:650;pointer-events:none}
.press-stage-label .press-live-index{color:var(--orange)}

/* Scroll scenes are large, with slight depth as each panel comes into view. */
.proof-scroll{height:305svh}
.proof-track{gap:2vw;padding:0 6vw}
.proof-slide{width:88vw;height:calc(100svh - var(--header) - 5.3rem);max-height:none;min-height:390px;border-radius:0;opacity:var(--panel-opacity,1);transform:scale(var(--panel-scale,1));transition:opacity .14s linear,transform .14s linear}
.proof-slide>img{transform:scale(var(--image-scale,1.03));transition:transform .14s linear}
.proof-slide .slide-copy{transform:translate3d(0,var(--copy-drift,0px),0);opacity:var(--copy-opacity,1);transition:transform .14s linear,opacity .14s linear}
.proof-intro h2,.world-press-title h2{transform:translate3d(0,var(--scene-shift,0px),0);will-change:transform}
.reveal{transform:translate3d(0,56px,0);transition:opacity 1.1s cubic-bezier(.18,.8,.18,1),transform 1.1s cubic-bezier(.18,.8,.18,1)}

@media (max-width:780px){
  .developer-page .role-evidence{padding-top:0}
  .network-proof{height:auto;margin:0 -6vw 5rem;padding:0}
  .network-scene{position:relative;top:auto;height:auto;min-height:72svh;padding:2rem 6vw 2.5rem}
  .network-top,.network-bottom{font-size:.5rem;line-height:1.6}
  .network-top span:last-child{display:none}
  .network-bottom span:last-child{display:block;font-size:0}
  .network-bottom span:last-child:after{content:"SWIPE MARKS ↔";font-size:.5rem}
  .network-center{display:block;padding:5rem 0 4rem;flex:none}
  .network-count{font-size:clamp(9rem,33vw,15rem)}
  .network-message{font-size:clamp(2.2rem,7vw,3.8rem);margin-top:1.2rem}
  .developer-lines{margin:0 -6vw 2rem;gap:.7rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .developer-line,.developer-line.line-one,.developer-line.line-two{transform:none!important;padding:0 6vw;gap:2rem}
  .developer-signature{font-size:1.55rem;gap:.7rem}
  .signature-mark{width:45px;height:45px}
  .world-press-title{min-height:55svh;padding:5rem 6vw}
  .film-grid{gap:0}
  .film-card:first-child{margin-bottom:3rem}
  .film-card:first-child .film-image{aspect-ratio:1.28;max-height:none}
  .film-card:first-child .film-overprint{font-size:clamp(2.4rem,8vw,4rem);max-width:80%}
  .film-card:first-child .film-play{top:1.3rem;bottom:auto}
  .film-card:first-child .film-caption strong{display:none}
  .film-card:not(:first-child){grid-template-columns:36% 1fr;gap:1.2rem;padding:1.25rem 0}
  .film-card:not(:first-child) .film-image{aspect-ratio:1.3;max-height:none}
  .film-card:not(:first-child) .film-caption strong{font-size:clamp(1.25rem,4vw,1.8rem)}
  .press-scroll{height:auto;padding:0 0 4rem}
  .press-viewport{position:relative;top:auto;height:auto;overflow:visible}
  .press-track{width:auto;height:auto;overflow-x:auto;gap:.75rem;padding:0 6vw 1.2rem;scroll-snap-type:x mandatory;transform:none!important;-webkit-overflow-scrolling:touch}
  .press-card{width:88vw;height:70svh;min-height:500px;scroll-snap-align:center;padding:1.8rem;transform:none!important;opacity:1!important}
  .press-card-art{width:75vw;right:-12vw;top:18%;font-size:85vw}
  .press-card-copy{transform:none!important;opacity:1!important;max-width:100%}
  .press-card h3{font-size:clamp(2.5rem,7.5vw,4.5rem)}
  .press-card-top,.press-card-bottom{font-size:.5rem}
  .press-stage-label{position:relative;right:auto;bottom:auto;padding:0 6vw;justify-content:space-between}
  .press-stage-label span:first-child{font-size:0}
  .press-stage-label span:first-child:after{content:"SWIPE STORIES ↔";font-size:.61rem}
  .press-progress{display:none}
  .proof-scroll{height:auto;padding:0 0 5rem}
  .proof-viewport{position:relative;top:auto;height:auto;display:block;overflow:visible}
  .proof-track{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding:0 6vw 1.2rem;transform:none!important}
  .proof-slide{width:87vw;height:61svh;min-height:390px;scroll-snap-align:center;transform:none!important;opacity:1!important}
  .proof-slide .slide-copy{transform:none!important;opacity:1!important}
}
@media (max-width:540px){
  .network-center{padding:4.3rem 0 3rem}
  .network-count{font-size:33vw}
  .network-message{font-size:2.4rem}
  .press-card{min-height:560px;height:75svh}
  .press-card h3{font-size:clamp(2.6rem,9vw,4rem)}
  .press-stage-label span:first-child{display:block}
  .film-image .film-play{font-size:.6rem}
}
@media (prefers-reduced-motion:reduce){
  .network-proof{height:auto}.network-scene{position:relative;top:auto;height:auto;min-height:80svh}.developer-line{transform:none!important;overflow-x:auto}
  .press-scroll,.proof-scroll{height:auto}.press-viewport,.proof-viewport{position:relative;top:auto;height:auto;overflow:visible}.press-track,.proof-track{width:auto;overflow-x:auto;transform:none!important;padding-bottom:1rem}
  .press-card,.proof-slide{transform:none!important;opacity:1!important}.press-card-copy,.proof-slide .slide-copy,.proof-intro h2,.world-press-title h2{transform:none!important;opacity:1!important}
}

/* Lenis owns desktop scroll easing; scene transforms follow its frame without another delay. */
html.lenis{scroll-behavior:auto}
html.lenis .proof-slide,
html.lenis .proof-slide>img,
html.lenis .proof-slide .slide-copy,
html.lenis .press-card-copy,
html.lenis .press-card-art{transition:none}

/* The next scene passes over a held opening, while the opening recedes. */
@media (min-width:781px) and (prefers-reduced-motion:no-preference){
  .decision-stage,.world-hero{position:sticky;top:var(--header);z-index:0}
  .decision-stage::after,.world-hero::after{content:"";position:absolute;inset:0;background:#091326;opacity:calc(var(--exit-progress,0) * .18);pointer-events:none}
  .decision-main,.stage-end,.world-hero>h1,.world-hero>p,.world-hero>a,.world-hero>.micro,.world-hero-mark{transform:translate3d(0,var(--exit-shift,0px),0) scale(var(--exit-scale,1));opacity:var(--exit-opacity,1);transform-origin:50% 35%;will-change:transform,opacity}
  .proof-intro,.proof-scroll,.role-evidence,.final-stage,.films-section,.world-press-title,.press-scroll,.world-end{position:relative;z-index:2}
  .proof-intro,.films-section{box-shadow:0 -32px 72px rgba(3,8,18,.15)}
}

/* A held horizontal journey: vertical wheel travel moves the evidence sideways. */
.proof-topline .mobile-cue{display:none}
@media (max-width:780px){.proof-topline .desktop-cue{display:none}.proof-topline .mobile-cue{display:block}}
@media (min-width:781px) and (prefers-reduced-motion:no-preference){
  .proof-scroll{height:390svh}
  .proof-viewport{display:flex}
  .proof-topline{position:relative;z-index:6;top:auto;left:auto;right:auto;margin:0 6vw 1.4rem}
  .proof-track{position:relative;inset:auto;display:flex;align-items:center;width:max-content;gap:2vw;padding:0 6vw;overflow:visible}
  .proof-slide{position:relative;inset:auto;width:88vw;height:calc(100svh - var(--header) - 5.3rem);min-height:390px;flex:none;opacity:var(--panel-opacity,1);transform:scale(var(--panel-scale,1));clip-path:none;will-change:transform}
  .proof-slide>img{transform:scale(var(--image-scale,1.02));will-change:transform}
  .proof-progress{position:relative;z-index:6;left:auto;right:auto;bottom:auto;margin:1.7rem 6vw 0}
  .developer-page .proof-media{background:radial-gradient(circle at 76% 38%,#223754,#0a152a 68%)}
  .developer-page .proof-media>img{left:44%;width:56%;object-fit:cover;object-position:right center;filter:saturate(.72) brightness(.82);-webkit-mask-image:linear-gradient(90deg,transparent,#000 24%);mask-image:linear-gradient(90deg,transparent,#000 24%)}
  .developer-page .proof-media .slide-shade{background:linear-gradient(90deg,rgba(8,18,35,.93),rgba(8,18,35,.2) 62%,transparent),linear-gradient(0deg,rgba(7,14,29,.62),transparent 55%)}
  .developer-page .proof-media .slide-copy{max-width:48%}
  .proof-authority{background:#0b172c}
  .proof-authority>img{left:auto;right:0;width:69%;object-position:center;filter:saturate(.62) brightness(.65)}
  .proof-authority .slide-shade{background:linear-gradient(90deg,#0b172c 4%,rgba(11,23,44,.92) 32%,rgba(11,23,44,.18) 75%),linear-gradient(0deg,rgba(8,17,34,.7),transparent 70%)}
  .proof-authority .slide-copy{max-width:54%}
  .proof-intro{min-height:100svh}
  .proof-intro h2{opacity:var(--intro-opacity,1);transform:translate3d(0,var(--intro-shift,0px),0);will-change:opacity,transform}
  .proof-intro .micro,.proof-intro p{opacity:var(--intro-body-opacity,1);transform:translate3d(0,var(--intro-body-shift,0px),0);will-change:opacity,transform}
}

/* Navy sampled from the supplied London Business School finalist artwork. */
:root{--navy:#041736;--navy-deep:#041736;--navy-soft:#092149;--orange:#ff5a16;--muted:#abbad3;--muted-2:#8397b7;--hair:rgba(226,237,252,.14)}
body,.role-page,.world-page,.proof-intro,.proof-scroll,.role-evidence,.films-section,.world-press-title,.press-scroll{background:#041736}
.decision-stage{background:radial-gradient(circle at 14% 28%,rgba(28,68,130,.2),transparent 44%),#041736}
.final-stage,.world-end{background:radial-gradient(circle at 78% 35%,#082044,#041736 59%)}
.network-scene{background:radial-gradient(circle at 52% 50%,#082044,#041736 68%)}
.old-stack,.press-card{background:#092149}
.new-stack{background:radial-gradient(circle at 80% 18%,#08234b,#041736 68%)}
.proof-product{background:linear-gradient(115deg,#041736,#071d3e)}
.proof-authority{background:#041736}
.proof-authority .slide-shade{background:linear-gradient(90deg,#041736 4%,rgba(4,23,54,.94) 32%,rgba(4,23,54,.16) 76%),linear-gradient(0deg,rgba(4,23,54,.72),transparent 70%)}
.proof-product .slide-shade{background:linear-gradient(90deg,rgba(4,23,54,.99),rgba(4,23,54,.9) 42%,rgba(4,23,54,.08) 78%)}
@media (min-width:781px){.developer-page .proof-media>img{-webkit-mask-image:linear-gradient(90deg,transparent 0 43%,#000 62%);mask-image:linear-gradient(90deg,transparent 0 43%,#000 62%)}}
.dialog-panel{background:radial-gradient(circle at 100% 0,#08234b,#041736 68%)}
.detail-dialog{overflow:hidden}
.world-hero{background-image:linear-gradient(90deg,rgba(4,23,54,.88),rgba(4,23,54,.4)),url('assets/frank-hero-desktop.png')}
.inner-header{background:rgba(4,23,54,.94);border-bottom:1px solid rgba(239,244,252,.055)}

/* A private index replaces the small row of navigation links. */
.header-context{justify-self:center;color:#b3c1d7;font-size:.61rem;font-weight:600;letter-spacing:.25em;white-space:nowrap}
.header-context span{color:var(--orange);padding:0 .65rem}
.site-menu-toggle,.site-menu-close{border:0;background:none;color:var(--ivory);padding:1rem 0;cursor:pointer;font-size:.69rem;font-weight:650;letter-spacing:.22em;display:flex;align-items:center;gap:1.15rem}
.site-menu-toggle{justify-self:end}
.site-menu-toggle span,.site-menu-close span{color:var(--orange);font-size:1.65rem;line-height:.7;font-weight:300;transition:transform .35s}
.site-menu-toggle:hover span,.site-menu-toggle:focus-visible span{transform:rotate(90deg)}
.site-menu-close:hover span,.site-menu-close:focus-visible span{transform:rotate(90deg)}
.site-menu{inset:0;width:100vw;height:100svh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#041736;color:var(--ivory);overflow-y:auto}
.site-menu::backdrop{background:rgba(1,9,24,.88);backdrop-filter:blur(12px)}
.site-menu-inner{position:relative;isolation:isolate;min-height:100svh;display:flex;flex-direction:column;padding:0 clamp(24px,6vw,110px) 2.1rem;overflow:hidden}
.site-menu-inner::before{content:"";position:absolute;z-index:-1;right:-13vw;top:-10vh;width:70vw;height:120vh;background:url('assets/frank-hero-desktop.png') right center/cover no-repeat;opacity:.2;-webkit-mask-image:linear-gradient(90deg,transparent,#000 42%);mask-image:linear-gradient(90deg,transparent,#000 42%);pointer-events:none}
.site-menu-top,.site-menu-bottom{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.site-menu-top{min-height:var(--header)}
.site-menu-content{width:min(980px,100%);margin:auto 0;position:relative;z-index:1;padding:2rem 0 3rem}
.menu-kicker{display:block;color:var(--orange);font-size:.68rem;font-weight:650;letter-spacing:.28em;margin-bottom:2.3rem}
.site-menu-paths{display:flex;flex-direction:column}
.menu-path{display:grid;grid-template-columns:3.4rem minmax(0,1fr) 2.8rem;gap:1rem;align-items:center;width:100%;padding:.2rem 0;color:#e9edf4}
.menu-count{align-self:start;padding-top:clamp(1.2rem,2vw,2rem);color:var(--orange);font-size:.7rem;font-weight:650;letter-spacing:.15em}
.menu-word{position:relative;display:block;height:1.08em;overflow:hidden;font-size:clamp(3.6rem,7.1vw,8.2rem);font-weight:280;letter-spacing:-.075em;line-height:1.08}
.menu-arrow{font-size:1.8rem;font-weight:250;color:#a5b7d0;transition:transform .45s,color .45s}
.menu-path:hover .menu-arrow,.menu-path:focus-visible .menu-arrow{transform:translate(5px,-5px);color:var(--orange)}
.menu-path.selected .menu-count{color:var(--ivory)}
.site-menu-bottom{color:#8fa3c0;font-size:.62rem;font-weight:600;letter-spacing:.2em}
@media (max-width:780px){
  .inner-header-row{grid-template-columns:1fr auto auto}
  .header-context{font-size:.48rem;letter-spacing:.12em}
  .site-menu-toggle{font-size:.58rem;gap:.5rem}
  .site-menu-inner{padding:0 6vw 1.5rem}
  .site-menu-inner::before{right:-72vw;width:150vw;opacity:.15}
  .menu-kicker{font-size:.55rem;margin-bottom:1.5rem}
  .menu-path{grid-template-columns:1.7rem minmax(0,1fr) 1.5rem;gap:.6rem;padding:.35rem 0}
  .menu-count{font-size:.56rem;padding-top:1rem}
  .menu-word{font-size:clamp(2.9rem,10vw,5.6rem)}
  .menu-arrow{font-size:1.2rem}
  .site-menu-bottom{font-size:.48rem}
  .world-hero{background-image:linear-gradient(90deg,rgba(4,23,54,.88),rgba(4,23,54,.42)),url('assets/frank-hero-mobile.png')}
}

/* October review: one navy across every path, with depth from light and imagery. */
.decision-stage,.final-stage,.world-end,.network-scene,.old-stack,.new-stack,.stack-stage,.broker-cash-stage,.proof-product,.proof-authority,.dialog-panel,.films-section,.press-card,.press-card:hover,.press-card-02,.press-card-02:hover,.press-card-03,.press-card-03:hover,.press-card-04,.press-card-04:hover{background:#041736}
.old-stack,.new-stack,.proof-ownership,.proof-ffsm{border:1px solid rgba(226,237,252,.15)}
.entry::after{background:linear-gradient(90deg,rgba(4,23,54,.25),transparent 65%),linear-gradient(0deg,rgba(4,23,54,.3),transparent 35%)}
.entry-roles{gap:clamp(3rem,8vw,10rem)}
.entry-roles a{color:#f4f7fc;text-shadow:0 0 34px rgba(222,235,255,.32)}
.entry-roles a:hover,.entry-roles a:focus-visible,.entry-roles a.is-touching{text-shadow:0 0 43px rgba(241,247,255,.76)}
.brand-mark span{background-position:center calc(50% + 11px)}
.entry-header .brand-mark span{background-position:center calc(50% + 13px)}
.dialog-panel{overflow-y:auto;overscroll-behavior:contain}
.menu-word{perspective:850px;overflow:visible}
.menu-word .menu-rotor{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .66s cubic-bezier(.2,.76,.2,1)}
.menu-word .menu-face{position:absolute;inset:0;display:block;line-height:1.08;backface-visibility:hidden;transform:translateZ(.54em);white-space:nowrap}
.menu-word .menu-face-back{color:var(--orange);transform:rotateX(90deg) translateZ(.54em)}
.menu-path:hover .menu-word .menu-rotor,.menu-path:focus-visible .menu-word .menu-rotor{transform:rotateX(-90deg)}
.menu-path:hover .menu-word .menu-face,.menu-path:focus-visible .menu-word .menu-face{transform:translateZ(.54em)}
.menu-path:hover .menu-word .menu-face-back,.menu-path:focus-visible .menu-word .menu-face-back{transform:rotateX(90deg) translateZ(.54em)}
.site-menu-content{padding:1.4rem 0}
.menu-path{padding:.05rem 0}
.menu-word{height:1em;font-size:clamp(3.25rem,6.2vw,7.1rem)}
.menu-utilities{display:flex;gap:.55rem 1.6rem;flex-wrap:wrap;margin:0 0 1.4rem;max-width:1000px}
.menu-utilities a,.menu-socials a{font-size:.6rem;letter-spacing:.13em;color:#c4d2e7;transition:color .25s}
.menu-utilities a:hover,.menu-socials a:hover{color:var(--orange)}
.menu-socials{display:flex;gap:.55rem 1.3rem;flex-wrap:wrap}
.site-menu-bottom{padding-top:1rem;border-top:1px solid var(--hair);align-items:flex-end}
.developer-page .offer-row{padding-top:clamp(.7rem,1.6vh,1.15rem);padding-bottom:clamp(.7rem,1.6vh,1.15rem)}
.proof-ffsm{display:grid;grid-template-columns:42% 58%;padding:clamp(2rem,4vw,4.5rem);gap:clamp(1rem,3vw,3rem);align-items:center;isolation:isolate}
.ffsm-intro{align-self:center;position:relative;z-index:2}
.ffsm-intro>span,.ownership-index{font-size:.66rem;letter-spacing:.2em;color:var(--orange);font-weight:650}
.ffsm-intro h3{font-size:clamp(2.8rem,5vw,6rem);font-weight:290;line-height:.98;letter-spacing:-.075em;margin:1.3rem 0}
.ffsm-intro p{font-size:1rem;line-height:1.5;color:#b8c8df;max-width:330px}
.ffsm-intro a{display:inline-block;margin-top:1.4rem;border-bottom:1px solid var(--hair);padding-bottom:.45rem;font-size:.65rem;letter-spacing:.12em;font-weight:650}
.ffsm-intro a:hover{color:var(--orange)}
.ffsm-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;height:100%;min-height:0}
.ffsm-person{position:relative;overflow:hidden;min-height:0;background:#041736}
.ffsm-person::after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#041736)}
.ffsm-person img{height:100%;width:100%;object-fit:cover;object-position:center 18%;filter:saturate(.6) contrast(1.05)}
.ffsm-person span{position:absolute;z-index:2;bottom:1rem;left:1rem;right:.6rem;display:block}
.ffsm-person strong{display:block;font-size:.85rem;font-weight:550}.ffsm-person small{display:block;margin-top:.2rem;color:var(--orange);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase}
.stack-stage{position:relative;z-index:2;padding:clamp(3rem,5vw,5rem) clamp(24px,6vw,110px)}
.stack-proof{max-width:1450px;margin:auto;padding:0;gap:1px;background:var(--hair);align-items:stretch}
.old-stack,.new-stack{min-height:430px;padding:clamp(2rem,4vw,4rem);border:0}
.old-stack p{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--hair);margin:0;padding:.5rem 0;color:#c9d4e5;font-size:clamp(1.1rem,1.9vw,1.9rem)}
.old-stack p:first-of-type{margin-top:1.3rem}
.old-stack p b{position:static;display:inline;color:var(--orange);font-size:2rem;font-weight:300;line-height:1;text-shadow:none}
.new-stack p{color:#c1cee0;font-size:1rem;line-height:1.55;max-width:490px}
.proof-ownership{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(2rem,4vw,4rem)}
.ownership-words{display:flex;flex-direction:column;font-size:clamp(2.8rem,5.8vw,7rem);line-height:.95;letter-spacing:-.07em;font-weight:290}
.ownership-words span{color:#aabbd3}.ownership-words strong{font-weight:320;color:#f4f7fc}
.ownership-caption{display:flex;justify-content:space-between;align-items:end;gap:2rem;border-top:1px solid var(--hair);padding-top:1rem}
.ownership-caption h3{font-size:clamp(1.5rem,2.3vw,2.8rem);font-weight:320;letter-spacing:-.05em;margin:0}
.ownership-caption p{max-width:300px;color:#b8c8df;font-size:.85rem;line-height:1.45;margin:0}
.broker-cash-stage{position:relative;z-index:2;padding:clamp(3rem,5vw,5rem) clamp(24px,6vw,110px)}
.brokerage-page .proof-intro,.broker-page .proof-intro{min-height:50svh;padding-top:4rem;padding-bottom:4rem}
.broker-cash-inner{max-width:1450px;margin:auto;position:relative;min-height:480px;display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:auto 1fr auto;gap:1rem 6vw;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);padding:2rem 0}
.broker-cash-inner>.micro{grid-column:1/-1}
.broker-cash-inner>strong{grid-column:1;grid-row:2/4;font-size:clamp(10rem,24vw,27rem);letter-spacing:-.13em;line-height:.75;font-weight:250;align-self:center;white-space:nowrap}
.broker-cash-inner>strong span{display:block;font-size:.075em;letter-spacing:.26em;color:var(--orange);font-weight:650;margin-top:1.9rem;margin-left:.5rem}
.broker-cash-inner h2{grid-column:2;grid-row:2;font-size:clamp(3.5rem,5vw,6rem);letter-spacing:-.07em;line-height:.98;font-weight:300;margin:auto 0 .7rem}
.broker-cash-inner h2 em{font-style:normal;color:#b9c9df}
.broker-cash-inner p{grid-column:2;grid-row:3;color:#bdcbe0;font-size:1rem;line-height:1.55;max-width:480px;margin:0 0 2rem}
.broker-cash-inner a{grid-column:2;grid-row:4;justify-self:start;border-bottom:1px solid var(--hair);padding-bottom:.5rem;font-size:.67rem;letter-spacing:.15em;font-weight:650}
.broker-cash-inner a:hover{color:var(--orange)}
.broker-page .role-evidence{padding-top:clamp(3.5rem,5vw,5rem);padding-bottom:clamp(4rem,6vw,6rem)}
.broker-network{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center;padding:0 0 clamp(2rem,3vw,3rem);min-height:0}
.broker-network strong{display:block;font-size:clamp(7rem,15vw,16rem);font-weight:250;letter-spacing:-.12em;line-height:.95;margin:1rem 0}
.broker-network strong span{color:var(--orange);font-size:.55em;vertical-align:top}
.broker-network p{max-width:360px;color:var(--muted);line-height:1.5}
@media (max-width:780px){
 .entry-roles{gap:.35rem}
 .menu-word{font-size:clamp(2.9rem,9vw,5rem)}
 .menu-utilities{gap:.65rem 1rem;margin-top:1rem}
 .site-menu-content{margin:auto 0 1rem}
 .menu-utilities{margin-top:auto}
 .site-menu-bottom{display:block}
 .site-menu-bottom>span{display:block;margin-top:1rem}
 .proof-ffsm{display:flex;flex-direction:column;align-items:stretch;gap:1.4rem;padding:1.5rem}
 .ffsm-intro h3{font-size:clamp(2.2rem,8vw,3.8rem);margin:.65rem 0}.ffsm-intro p{font-size:.78rem;margin:.5rem 0}.ffsm-intro a{margin-top:.55rem}
 .ffsm-people{height:48%;min-height:170px;gap:.35rem}.ffsm-person:nth-child(n+3){display:none}.ffsm-person span{bottom:.5rem;left:.5rem}.ffsm-person strong{font-size:.65rem}.ffsm-person small{font-size:.5rem}
 .stack-proof{grid-template-columns:1fr}.old-stack,.new-stack{min-height:0;padding:2rem}.old-stack p{font-size:1.3rem}
 .proof-ownership{padding:1.6rem}.ownership-words{font-size:clamp(2.5rem,8vw,5rem)}.ownership-caption{display:block}.ownership-caption p{margin-top:.4rem;font-size:.7rem}
 .broker-cash-inner{display:block;min-height:0}.broker-cash-inner>strong{font-size:clamp(8rem,28vw,16rem);display:block;margin:3rem 0 2rem}.broker-cash-inner h2{font-size:clamp(3.1rem,9vw,5rem)}.broker-cash-inner p{font-size:.9rem}.broker-cash-inner a{display:inline-block;margin-bottom:1rem}
 .broker-network{grid-template-columns:1fr;gap:2rem;padding-bottom:2rem}.broker-network strong{font-size:clamp(8rem,29vw,13rem)}.broker-network .proof-actions{gap:.5rem}.broker-network .proof-actions span{font-size:clamp(3.8rem,15vw,7rem)}
}
@media (max-width:540px){.inner-header-row{display:flex;justify-content:space-between;padding-inline:20px}.header-context{display:none}.menu-socials{gap:.45rem .8rem}.menu-socials a,.menu-utilities a{font-size:.47rem}.menu-word{font-size:clamp(2.7rem,11vw,4.3rem)}.developer-page .offer-row{padding:.85rem 0}.ffsm-person img{object-position:center top}}
@media (prefers-reduced-motion:reduce){.menu-word .menu-rotor{transition:none}}

/* Role and offer choices turn on the same axis as the navigation. */
.flip-stage{position:relative;display:block;perspective:800px;transform-style:preserve-3d;white-space:nowrap}
.flip-sizer{display:block;visibility:hidden;line-height:inherit}
.flip-rotor{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .64s cubic-bezier(.2,.76,.2,1)}
.flip-face{position:absolute;inset:0;display:block;line-height:inherit;backface-visibility:hidden;transform:translateZ(.56em)}
.flip-face-back{color:var(--orange);transform:rotateX(90deg) translateZ(.56em)}
.entry-roles a:hover .flip-rotor,.entry-roles a:focus-visible .flip-rotor,.entry-roles a.is-touching .flip-rotor,.offer-row:hover .flip-rotor,.offer-row:focus-visible .flip-rotor,.offer-row.is-touching .flip-rotor{transform:rotateX(-90deg)}
.entry-name.flip-stage{line-height:1.1}
.offer-flip.flip-stage{display:inline-block;vertical-align:bottom;line-height:1.16}
.offer-row.is-touching{background:rgba(255,255,255,.035)}

/* Four visible FFSMs continue cycling through the public roster. */
.ffsm-person{transition:opacity .35s ease,filter .35s ease}
.ffsm-person.is-changing{opacity:.12;filter:blur(6px)}

/* Every offer opens a concise enquiry form beside its terms. */
.detail-dialog .dialog-panel{width:min(100%,1160px)}
.dialog-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.92fr);gap:clamp(2rem,4vw,5rem);align-items:center;flex:none;min-height:auto;padding:1.8rem 0}
.detail-dialog .dialog-body{margin:0;min-width:0}
.detail-dialog .dialog-body h2{font-size:clamp(2.5rem,4.1vw,5rem);margin:1rem 0 1.4rem}
.detail-dialog .dialog-body>p{font-size:clamp(1rem,1.35vw,1.25rem)}
.detail-dialog .dialog-body ul{margin:1.6rem 0 0}
.detail-dialog .dialog-body li{font-size:.82rem}
.broker-subscribe{display:inline-flex;margin-top:1.5rem}
.enquiry-form{border-left:1px solid var(--hair);padding-left:clamp(2rem,4vw,4rem);min-width:0}
.enquiry-heading .micro{font-size:.56rem}
.enquiry-heading h3{font-size:clamp(1.7rem,2.2vw,2.5rem);font-weight:330;line-height:1.1;letter-spacing:-.06em;margin:.6rem 0 1.5rem}
.enquiry-form label{display:block;margin:0 0 1rem;color:#acbdd5;font-size:.61rem;font-weight:650;letter-spacing:.14em;line-height:1.3}
.enquiry-form input,.enquiry-form textarea{display:block;width:100%;border:0;border-bottom:1px solid rgba(230,239,252,.29);border-radius:0;outline:none;background:transparent;color:#f8f8fa;font:400 .95rem/1.35 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:0;padding:.65rem 0 .7rem;margin-top:.3rem;resize:vertical;transition:border-color .25s}
.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#8295b4;opacity:1}
.enquiry-form input:focus,.enquiry-form textarea:focus{border-color:var(--orange)}
.enquiry-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.enquiry-submit{margin-top:.5rem;border:0;cursor:pointer;width:100%;min-width:0}
.enquiry-note,.enquiry-status{font-size:.71rem;color:#9cafca;line-height:1.45;margin:.85rem 0 0}
.enquiry-status a{color:var(--orange);border-bottom:1px solid currentColor}
.detail-dialog .dialog-foot{justify-content:flex-end;border-top:1px solid var(--hair);padding-top:1rem;margin-top:.4rem}
.detail-dialog .dialog-foot>span{max-width:none}
.final-content button.primary-action{border:0;cursor:pointer;text-align:left}

/* The cancellation mark sits on each subscription name. */
.old-stack p{justify-content:flex-start}
.old-stack .cancelled-name{position:relative;display:inline-block;width:max-content;text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:rgba(255,90,22,.75)}
.old-stack .cancelled-name b{position:absolute;left:50%;top:50%;width:clamp(27px,3vw,38px);height:clamp(27px,3vw,38px);transform:translate(-50%,-50%) rotate(-12deg);display:block;font-size:0;pointer-events:none}
.old-stack .cancelled-name b::before,.old-stack .cancelled-name b::after{content:"";position:absolute;left:0;top:50%;width:100%;height:2px;background:var(--orange);box-shadow:0 0 14px rgba(255,90,22,.28)}
.old-stack .cancelled-name b::before{transform:rotate(45deg)}
.old-stack .cancelled-name b::after{transform:rotate(-45deg)}

/* Keep the signature and the three paths together at the heart of the entry screen. */
.entry-header{justify-content:flex-start}
.entry-choices{position:absolute;z-index:3;left:50%;top:54%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;width:max-content;max-width:95vw}
.entry-choices .entry-roles{position:relative;left:auto;top:auto;transform:none}
.entry-signature{position:relative;display:block;align-self:center;width:clamp(420px,42vw,590px);height:auto;transform:translate(-20px,-16px) rotate(-8deg);transform-origin:50% 65%;pointer-events:none;filter:brightness(1.18) saturate(1.1) drop-shadow(0 0 1px rgba(255,86,22,.75))}
.film-card-ceo .film-image img{object-fit:contain;background:#041736;filter:saturate(.73)}
.broker-page .proof-product>img{width:61%;object-fit:cover;filter:saturate(.7) brightness(.72)}
.press-card-has-photo .press-card-art{right:0;top:0;width:39vw;height:100%;font-size:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 23%);mask-image:linear-gradient(90deg,transparent,#000 23%)}
.press-card-has-photo .press-card-art img{height:100%;width:100%;object-fit:cover;object-position:center;filter:saturate(.7) brightness(.79);opacity:.9}
.press-card-has-photo .press-card-art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#041736,transparent 42%)}
.press-card-has-photo .press-card-copy{max-width:min(720px,55vw)}
.press-card-has-photo h3{font-size:clamp(3.2rem,5.1vw,7rem);max-width:16ch}
@media (max-width:900px){
 .dialog-layout{display:block;padding:1.6rem 0}
 .detail-dialog .dialog-body{margin:0 0 2rem}
 .detail-dialog .dialog-body h2{font-size:clamp(2.6rem,7vw,4rem)}
 .enquiry-form{border-left:0;border-top:1px solid var(--hair);padding:1.7rem 0 0}
}
@media (max-width:780px){
 .developer-page .proof-ffsm{height:min(78svh,650px);min-height:540px}
 .developer-page .ffsm-people{height:51%;min-height:260px}
 .developer-page .ffsm-person:nth-child(n+3){display:block}
 .entry-choices{top:44%;width:86vw;max-width:none;align-items:flex-start}
 .entry-choices .entry-roles{width:100%}
 .entry-signature{width:min(84vw,390px);transform:translate(-12px,-12px) rotate(-8deg)}
 .broker-page .proof-product>img{width:100%;opacity:.38}
 .press-card-has-photo .press-card-art{right:-12vw;top:0;width:100%;height:100%;opacity:.42;-webkit-mask-image:linear-gradient(90deg,transparent,#000 37%);mask-image:linear-gradient(90deg,transparent,#000 37%)}
 .press-card-has-photo .press-card-copy{max-width:100%}
}
@media (max-width:540px){
 .offer-main strong{font-size:clamp(.95rem,3.8vw,1.15rem)}
 .detail-dialog .dialog-panel{padding:1.35rem}
 .detail-dialog .dialog-body h2{font-size:clamp(2.4rem,9vw,3.6rem)}
 .enquiry-pair{grid-template-columns:1fr;gap:0}
 .old-stack .cancelled-name b{font-size:0}
}
@media (prefers-reduced-motion:reduce){
 .flip-rotor{transition:none!important;transform:none!important}
 .entry-roles a:hover .flip-face,.entry-roles a:focus-visible .flip-face,.offer-row:hover .flip-face,.offer-row:focus-visible .flip-face{color:var(--orange)}
 .ffsm-person{transition:none}
}

/* A smaller wordmark in the upper right, with the channels held quietly below. */
.entry-header{justify-content:flex-end}
.entry-header .brand-mark{width:147px;height:41px}
.entry-header .brand-mark span{background-size:220px 275px;background-position:center calc(50% + 11px)}
.entry-world{left:5.3vw;right:auto}
.entry-socials{position:absolute;z-index:4;left:50%;bottom:11.4vh;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:clamp(.5rem,1.35vw,1.35rem);width:max-content;max-width:92vw}
.entry-socials>a,.entry-socials>.social-link-pending{display:grid;place-items:center;width:38px;height:38px;color:rgba(247,246,243,.82);transition:color .25s,transform .3s;flex:0 0 auto}
.entry-socials>a:hover,.entry-socials>a:focus-visible{color:var(--orange);transform:translateY(-4px)}
.entry-socials>a:focus-visible{outline:1px solid var(--orange);outline-offset:1px}
.entry-socials>.social-link-pending{opacity:.42;cursor:default}
.social-icon{width:21px;height:21px;display:block;fill:currentColor}
.social-icon-stroke{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:780px){
 .entry-header{justify-content:flex-end}
 .entry-header .brand-mark{width:134px;height:38px}
 .entry-header .brand-mark span{background-size:205px 256px;background-position:center calc(50% + 10px)}
 .entry-world{left:6vw;right:auto}
 .entry-socials{bottom:10vh;gap:clamp(.15rem,1vw,.55rem)}
 .entry-socials>a,.entry-socials>.social-link-pending{width:37px;height:37px}
 .social-icon{width:20px;height:20px}
}
@media (max-width:390px){.entry-socials>a,.entry-socials>.social-link-pending{width:35px;height:35px}}

/* Entry adjustments: the wordmark stays left; contact sits with the other channels. */
.entry-header{justify-content:flex-start}
.entry-world{left:auto;right:5.3vw}
.entry-signature{transform:translate(-20px,-30px) rotate(-8deg)}
.entry-socials>.entry-phone-trigger{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;padding:0;border:0;background:transparent;color:rgba(247,246,243,.82);cursor:pointer;transition:color .25s,transform .3s}
.entry-socials>.entry-phone-trigger:hover,.entry-socials>.entry-phone-trigger:focus-visible{color:var(--orange);transform:translateY(-4px)}
.entry-socials>.entry-phone-trigger:focus-visible{outline:1px solid var(--orange);outline-offset:1px}
.social-icon-image{object-fit:contain;mix-blend-mode:screen}
.entry-phone-dialog{width:min(440px,calc(100vw - 32px));max-width:none;max-height:min(640px,calc(100svh - 36px));margin:auto;padding:0;border:1px solid rgba(230,239,252,.22);background:#041736;color:var(--ivory);box-shadow:0 30px 110px rgba(0,0,0,.42)}
.entry-phone-dialog::backdrop{background:rgba(2,8,20,.75);backdrop-filter:blur(10px)}
.entry-phone-inner{position:relative;padding:clamp(2rem,5vw,3.5rem)}
.entry-phone-close{position:absolute;right:1.25rem;top:1rem;border:0;background:transparent;color:var(--ivory);font-size:2rem;font-weight:250;cursor:pointer}
.entry-phone-inner h2{font-size:clamp(2.8rem,7vw,4rem);font-weight:300;letter-spacing:-.07em;line-height:1;margin:1.2rem 0 2rem}
.entry-phone-inner>a{display:grid;grid-template-columns:80px 1fr 20px;align-items:center;gap:.8rem;border-top:1px solid var(--hair);padding:1.05rem 0;font-size:1.3rem;font-weight:350;letter-spacing:-.035em;transition:color .25s}
.entry-phone-inner>a:last-child{border-bottom:1px solid var(--hair)}
.entry-phone-inner>a:hover,.entry-phone-inner>a:focus-visible{color:var(--orange)}
.entry-phone-inner>a span{font-size:.55rem;letter-spacing:.15em;color:var(--muted)}
.entry-phone-inner>a b{font-size:.9rem;font-weight:400;color:var(--orange)}

/* Deliberate red cancellations across each word. */
.old-stack .cancelled-name{display:inline-flex;flex-wrap:wrap;gap:.35em;text-decoration:none}
.old-stack .cancelled-word{position:relative;display:inline-block;color:#cbd5e5}
.old-stack .cancelled-word::before,.old-stack .cancelled-word::after{content:"";position:absolute;left:-3%;top:50%;width:106%;height:4px;border-radius:4px;background:#ff3948;box-shadow:0 0 15px rgba(255,57,72,.28);pointer-events:none}
.old-stack .cancelled-word::before{transform:rotate(17deg)}
.old-stack .cancelled-word::after{transform:rotate(-17deg)}

/* Corporate subscription calculator. */
.savings-stage{position:relative;z-index:2;background:#041736;padding:clamp(5rem,10vw,10rem) clamp(24px,6vw,110px)}
.savings-shell{max-width:1450px;margin:auto}
.savings-header{display:grid;grid-template-columns:1fr minmax(260px,.48fr);column-gap:5vw;align-items:end;margin-bottom:3rem}
.savings-header .micro{grid-column:1/-1}
.savings-header h2{font-size:clamp(3.5rem,6.5vw,7rem);font-weight:300;line-height:.98;letter-spacing:-.08em;margin:1.3rem 0 0}
.savings-header h2 em{font-style:normal;color:#c3d1e3}
.savings-header p{color:#a8bbd3;font-size:1.06rem;line-height:1.5;max-width:390px;margin:0 0 .5rem}
.savings-calculator{display:grid;grid-template-columns:1.06fr .94fr;border:1px solid rgba(226,237,252,.18);background:#041736}
.calc-inputs,.calc-results{padding:clamp(1.6rem,3.3vw,3.6rem)}
.calc-results{position:sticky;top:calc(var(--header) + 20px);align-self:start;border-left:1px solid rgba(226,237,252,.18);background:#071a35}
.calc-column-head,.calc-results-label{display:flex;justify-content:space-between;color:#c8d5e6;font-size:.63rem;font-weight:700;letter-spacing:.19em}
.calc-column-head{margin-bottom:1.4rem}
.calc-group-label{color:var(--orange);font-size:.55rem;font-weight:700;letter-spacing:.2em;padding:1.45rem 0 .55rem}
.calc-line{display:grid;grid-template-columns:minmax(0,1fr) 128px 32px;align-items:center;gap:1rem;min-height:60px;border-bottom:1px solid rgba(226,237,252,.13)}
.calc-line>label:first-child,.calc-line>span:first-child{font-size:clamp(.86rem,1.14vw,1.08rem);color:#e0e8f2;line-height:1.25}
.calc-line.calc-fixed>strong{font-size:.95rem;font-weight:500;text-align:right;white-space:nowrap}
.calc-money{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;color:#91a7c2}
.calc-money span{font-size:.55rem;letter-spacing:.12em}
.calc-money input{width:84px;min-width:0;border:0;border-bottom:1px solid rgba(226,237,252,.28);border-radius:0;background:transparent;color:#fff;font:500 1.1rem/1.2 -apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;text-align:right;padding:.45rem .1rem;outline:none;font-variant-numeric:tabular-nums}
.calc-money input:focus{border-color:var(--orange)}
.calc-money input::placeholder{color:#607795}
.calc-money input::-webkit-inner-spin-button,.calc-money input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.calc-money input[type=number]{appearance:textfield;-moz-appearance:textfield}
.calc-cancel{display:grid;place-items:center;width:32px;height:34px;cursor:pointer}
.calc-cancel input{position:absolute;opacity:0;width:1px;height:1px}
.calc-cancel>span[aria-hidden]{position:relative;display:block;width:20px;height:20px;border:1px solid rgba(226,237,252,.42);transition:border-color .2s,background .2s}
.calc-cancel input:checked+span{background:var(--orange);border-color:var(--orange)}
.calc-cancel input:checked+span::after{content:"";position:absolute;left:5px;top:2px;width:6px;height:10px;border:solid #041736;border-width:0 2px 2px 0;transform:rotate(45deg)}
.calc-cancel input:focus-visible+span{outline:2px solid var(--ivory);outline-offset:3px}
.calc-input-note,.calc-disclaimer{font-size:.7rem;line-height:1.55;color:#93a8c3}
.calc-input-note{margin:1.5rem 0 0;max-width:490px}
.calc-plans{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(226,237,252,.2);margin:1.7rem 0 2.8rem;border:1px solid rgba(226,237,252,.2)}
.calc-plan{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;border:0;background:#071a35;color:#b7c7db;cursor:pointer;padding:1.15rem;text-align:left;transition:background .25s,color .25s}
.calc-plan.is-selected{background:#132d50;color:#fff;box-shadow:inset 0 2px var(--orange)}
.calc-plan span{font-size:.57rem;letter-spacing:.17em;font-weight:700}
.calc-plan strong{font-size:clamp(1.2rem,1.65vw,1.65rem);font-weight:350;letter-spacing:-.04em;white-space:nowrap}
.calc-primary{border-top:1px solid rgba(226,237,252,.24);padding-top:1.8rem;min-height:190px}
.calc-primary>span{display:block;color:var(--orange);font-size:.65rem;font-weight:700;letter-spacing:.18em}
.calc-primary strong{display:block;font-size:clamp(3.7rem,6vw,6.8rem);line-height:1.06;letter-spacing:-.085em;font-weight:300;margin:.6rem 0 .1rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.calc-primary small{font-size:.56rem;letter-spacing:.2em;color:#a4b7d0}
.calc-primary.is-negative>span{color:#ff626b}
.calc-comparison{border-top:1px solid rgba(226,237,252,.2);margin-top:1.3rem}
.calc-comparison>div{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;border-bottom:1px solid rgba(226,237,252,.15);padding:1rem 0}
.calc-comparison span{font-size:.57rem;letter-spacing:.14em;color:#9db0cb}
.calc-comparison strong{font-size:1.05rem;font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}
.calc-bars{display:grid;gap:.55rem;margin:1.5rem 0 1.9rem}
.calc-bars>div{display:grid;grid-template-columns:65px 1fr;align-items:center;gap:.8rem}
.calc-bars span{font-size:.5rem;letter-spacing:.13em;color:#8ba2c1}
.calc-bars i{display:block;width:var(--bar-width,0%);height:4px;background:#7e94b2;transition:width .45s cubic-bezier(.2,.8,.2,1)}
.calc-bars>div:last-child i{background:var(--orange)}
.calc-disclaimer{border-top:1px solid rgba(226,237,252,.16);padding-top:1rem;margin:0}
.calc-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2rem}
.calc-actions button{border:0;background:transparent;color:#aabed8;cursor:pointer;font-size:.58rem;font-weight:700;letter-spacing:.14em;padding:.8rem 0}
.calc-actions .calc-enquire{color:var(--ivory);border-bottom:1px solid var(--orange)}
.calc-actions button:hover,.calc-actions button:focus-visible{color:var(--orange)}
.calc-actions .calc-enquire span{margin-left:.5rem;color:var(--orange)}
@media(max-width:900px){.savings-header{grid-template-columns:1fr}.savings-header p{margin:1.5rem 0 0}.savings-calculator{grid-template-columns:1fr}.calc-results{position:static;border-left:0;border-top:1px solid rgba(226,237,252,.18)}}
@media(max-width:780px){.entry-header{justify-content:flex-start}.entry-world{left:auto;right:6vw}.entry-signature{transform:translate(-12px,-25px) rotate(-8deg)}.entry-socials>.entry-phone-trigger{width:37px;height:37px}}
@media(max-width:540px){.savings-stage{padding:5rem 6vw}.savings-header h2{font-size:clamp(3.1rem,12vw,4.4rem)}.calc-line{grid-template-columns:minmax(0,1fr) 110px 26px;gap:.5rem}.calc-money input{width:66px}.calc-plan strong{font-size:1.2rem}.calc-primary strong{font-size:clamp(1.9rem,9.5vw,4.7rem)}.entry-phone-inner>a{grid-template-columns:60px 1fr 15px;font-size:1.1rem}}
@media(max-width:390px){.entry-socials>.entry-phone-trigger{width:30px;height:35px}.entry-socials>a,.entry-socials>.social-link-pending{width:30px;height:35px}.entry-socials{gap:2px}.social-icon{width:18px;height:18px}}
