.mobile-menu-backdrop{display:none}
/* A phone composition, rather than a reduced desktop layout. Desktop is untouched. */
@media(max-width:760px){
 html:has(body.theme-blanc){scroll-padding-block-start:88px}
 body.theme-blanc,body.booking{
  --space-section:80px;--space-heading:32px;--space-opening:40px;
  --type-display:clamp(32px,8.7vw,38px);--type-section:32px;--type-feature:27px;
  --type-proof:30px;--type-card:22px;--type-body:16px;--type-body-small:16px;
 }
 /* The wordmark remains centred; the primary action lives in the page and menu. */
 html body.film-home-v39.home-revised .lh-header .lh-nav{
  height:72px;padding:0 24px;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:0;
 }
 html body.film-home-v39.home-revised .lh-header .lh-logo{grid-column:2;grid-row:1;justify-self:center;position:relative;inset:auto;transform:none}
 html body.film-home-v39.home-revised .lh-header .lh-nav-cta{display:none}
 html body.film-home-v39.home-revised .lh-header .menu-toggle{
  grid-column:3;grid-row:1;width:44px;height:44px;justify-self:end;align-items:center;
  justify-content:center;gap:6px;padding:0;position:relative;
 }
 html body.film-home-v39.home-revised .lh-header .menu-toggle span{width:21px;height:1.3px;margin:0}
 html body.film-home-v39.home-revised .lh-header .menu-toggle::before{display:none}
 html body.film-home-v39.home-revised.menu-open .lh-header{color:#191918;background:#fff;box-shadow:none}
 body.theme-blanc.menu-open{overflow:hidden}
 .mobile-menu-backdrop{display:none}
 html body.theme-blanc.menu-open .mobile-menu-backdrop{display:block;position:fixed;inset:72px 0 0;width:100%;height:calc(100dvh - 72px);border-radius:0;background:#0005;z-index:0}
 html body.film-home-v39.home-revised .lh-header .lh-nav{position:relative;z-index:2}
 html body.film-home-v39.home-revised .lh-header .mobile-nav:not([hidden]){
  position:absolute;top:72px;left:0;right:0;display:flex;gap:0;padding:8px 24px 28px;
  max-height:calc(100dvh - 72px);overflow:auto;background:#fff;color:#191918;
  border:0;border-radius:0;box-shadow:none;z-index:3;
 }
 html body.theme-blanc .lh-header .mobile-nav>a:not(.lh-button),
 html body.theme-blanc .lh-header .mobile-solutions>summary{
  display:flex;align-items:center;justify-content:space-between;min-height:62px;padding:15px 0;
  font-size:23px;font-weight:450;line-height:1.3;letter-spacing:-.025em;
  color:#191918;text-decoration:none;border-bottom:1px solid #e9e7e3;
 }
 html body.film-home-v39.home-revised.theme-blanc .lh-header details.mobile-solutions{display:block;flex-direction:initial;padding:0;margin:0;gap:0}
 html body.theme-blanc .lh-header .mobile-solutions>summary{list-style:none;cursor:pointer}
 html body.theme-blanc .lh-header .mobile-solutions>summary::-webkit-details-marker{display:none}
 .mobile-solutions>summary svg{width:16px;height:16px;opacity:.55;transition:transform 150ms ease}
 .mobile-solutions[open]>summary svg{transform:rotate(180deg)}
 html body.theme-blanc .lh-header details.mobile-solutions>a{
  display:block;font-size:17px;line-height:1.4;font-weight:400;padding:14px 0 14px 16px;
  border-bottom:1px solid #efeeeb;color:#625f5a;text-decoration:none;
 }
 html body.theme-blanc .lh-header details.mobile-solutions:not([open])>a{display:none}
 html body.theme-blanc .lh-header .mobile-nav .lh-button{
  align-self:stretch;max-width:none;width:100%;min-height:46px;margin:24px 0 0;
  padding:12px 20px;font-size:14px;line-height:1.4;border-radius:999px;
 }
 /* Arrival: one hierarchy, with enough space left for the speaker. */
 html[data-typeface] body.home-continuous.theme-blanc .lh-hero h1{
  font-size:clamp(32px,8.7vw,38px);font-weight:500;line-height:1.08;letter-spacing:-.035em;margin-bottom:20px;
 }
 html[data-typeface] body.home-continuous.theme-blanc .lh-hero-copy>p{font-size:16px;line-height:1.5;max-width:34ch;margin-bottom:24px}
 body.theme-blanc .lh-hero-row{gap:18px 16px}
 body.theme-blanc .lh-hero-row .lh-button{min-height:44px;font-size:13px;padding-inline:20px}
 body.theme-blanc .lh-yc{font-size:11px}
 body.theme-blanc .lh-sound{font-size:12px;min-height:40px}
 /* Keep the reading rhythm consistent from the film to the four chapters. */
 html[data-typeface] body.refined.home-revised.home-continuous.theme-blanc #a-new-scale{padding-block:80px}
 html[data-typeface] body.refined.home-revised.home-continuous.theme-blanc .lh-intro h2{font-size:32px;line-height:1.12;letter-spacing:-.035em}
 body.refined.home-revised.home-continuous.theme-blanc .lh-intro .lh-statement{font-size:17px;line-height:1.5;margin-top:20px;max-width:36ch}
 body.refined.home-revised.home-continuous.theme-blanc .platform-story-flow{gap:72px}
 body.refined.home-revised.home-continuous.theme-blanc .story-flow-chapter{gap:26px}
 body.refined.home-revised.home-continuous.theme-blanc .story-flow-chapter.has-vector-scene figure{aspect-ratio:440/380;border-radius:18px}
 body.refined.home-revised.home-continuous.theme-blanc .story-flow-copy{padding:0}
 body.refined.home-revised.home-continuous.theme-blanc .story-flow-index{font-size:12px;line-height:1.4;letter-spacing:.025em;color:#8b8983;margin-bottom:12px;font-weight:400}
 html[data-typeface] body.refined.home-revised.home-continuous.theme-blanc .story-flow-copy h3{font-size:27px;line-height:1.13;font-weight:500;letter-spacing:-.03em;margin-bottom:16px;max-width:20ch;text-wrap:pretty}
 body.refined.home-revised.home-continuous.theme-blanc .story-flow-copy>p{font-size:16px;line-height:1.55;max-width:38ch}
 body.refined.home-revised.home-continuous.theme-blanc [data-platform-story]>.platform-links{display:none}
 body.refined.home-revised.home-continuous.theme-blanc .platform-links{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:0}
 body.refined.home-revised.home-continuous.theme-blanc .platform-links .text-link{font-size:13px}
 /* Recompose the artwork at 440px, keeping UI text legible and the frame calm. */
 body.theme-blanc [data-flow-chapter] .fm .fm-obj.fm-wall{width:440px!important}
 body.theme-blanc [data-flow-chapter] .fm .fm-wt{font-size:20px;line-height:1.25;margin:0 auto 18px!important;max-width:370px}
 body.theme-blanc [data-flow-chapter] .fm .fm-wl{font-size:13px;line-height:1.4;margin:8px 0 0!important;padding-left:28px}
 body.theme-blanc [data-flow-chapter] .fm .fm-wq{margin:6px 0}
 body.theme-blanc [data-flow-chapter] .fm .fm-wq span{height:38px;font-size:17px;padding-inline:13px;border-radius:9px;gap:8px}
 body.theme-blanc [data-flow-chapter] .fm .fm-wq .fm-wf img{width:20px;height:20px}
 body.theme-blanc [data-flow-chapter] .fm .fm-wn{gap:18px;margin-top:20px!important;font-size:12px}
 body.theme-blanc [data-flow-chapter] .fm .fm-wn b{font-size:23px;margin-right:4px}
 body.theme-blanc [data-flow-chapter] .fm .fm-wn.is-top{margin:0 0 20px!important}
 body.theme-blanc [data-flow-chapter] .fm .fm-feed{height:250px;margin:0 28px}
 body.theme-blanc [data-flow-chapter] .fm .fm-feed li{height:44px;font-size:17px;margin-bottom:8px;padding-inline:14px;gap:10px;border-radius:9px}
 body.theme-blanc [data-flow-chapter] .fm .fm-feed em{display:none}
 body.theme-blanc [data-flow-chapter] .fm .fm-obj.fm-queue{padding:0 28px!important}
 body.theme-blanc [data-flow-chapter] .fm .fm-queue .fm-wt{font-size:20px;max-width:340px}
 body.theme-blanc [data-flow-chapter] .fm .fm-queue>.fm-wl{display:none}
 body.theme-blanc [data-flow-chapter] .fm .fm-qc{margin-top:12px;padding:18px;border-radius:12px}
 body.theme-blanc [data-flow-chapter] .fm .fm-qc small{font-size:13px;margin-bottom:8px}
 body.theme-blanc [data-flow-chapter] .fm .fm-qc p{font-size:19px;line-height:1.3}
 body.theme-blanc [data-flow-chapter] .fm .fm-qt{position:static;width:fit-content;margin-top:12px;padding:4px 10px;font-size:13px}
 body.theme-blanc [data-flow-chapter] .fm .fm-qc .fm-qn{font-size:16px;line-height:1.4;margin-top:12px;padding-top:12px}
 body.theme-blanc [data-flow-chapter] .fm .fm-qc[data-q="open"]{display:none}
 body.theme-blanc [data-flow-chapter] .fm-playback{width:26px;height:26px;top:10px;right:10px}
 body.theme-blanc [data-flow-chapter]:not(.is-playing) :is(.fm-wq>div,.fm-feed ul,.fm-feed i.is-live,.is-new),
 body.theme-blanc [data-flow-chapter] figure:has(>.fm-playback.is-paused) :is(.fm-wq>div,.fm-feed ul,.fm-feed i.is-live,.is-new){animation-play-state:paused}
 /* Shared mobile typography and sections. */
 html[data-typeface] body.theme-blanc .audience-copy h3{font-size:26px;line-height:1.15}
 body.refined.home-revised.home-continuous.theme-blanc .audience-copy p{font-size:16px;line-height:1.55}
 body.theme-blanc .audience-panels{gap:16px}
 body.theme-blanc .audience-panel .audience-copy{padding:28px 24px}
 body.refined.home-revised.home-continuous.theme-blanc .home-proof{gap:36px;padding-block:80px}
 body.refined.home-revised.home-continuous.theme-blanc .n-count-num{font-size:112px;line-height:.9}
 body.refined.home-revised.home-continuous.theme-blanc .n-count-label{font-size:14px;line-height:1.5;margin-top:20px;max-width:28ch}
 body.refined.home-revised.home-continuous.theme-blanc .n-count ul{margin-top:20px;gap:7px}
 body.refined.home-revised.home-continuous.theme-blanc .n-count li{font-size:11px;padding:7px 12px;letter-spacing:0}
 body.refined.home-revised.home-continuous.theme-blanc .home-proof>div:not(.n-count)>.eyebrow{display:none}
 html[data-typeface] body.refined.home-revised.home-continuous.theme-blanc .home-proof #proof-title{font-size:30px;line-height:1.12}
 body.refined.home-revised.home-continuous.theme-blanc .home-proof>div>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-top:20px}
 html[data-typeface] body.theme-blanc .ff-footer h2{font-size:32px;line-height:1.1;letter-spacing:-.035em;max-width:16ch;text-wrap:pretty}
 body.theme-blanc .ff-b{padding-top:56px}
 body.theme-blanc .ff-b .ff-copy{padding-bottom:56px}
 body.theme-blanc .ff-actions{gap:20px;margin-top:28px;flex-wrap:wrap}
 body.theme-blanc .ff-button{min-height:44px;font-size:13px}
 body.theme-blanc .ff-actions>button{min-height:44px;font-size:13px}
 body.theme-blanc .ff-legal{font-size:11px;line-height:1.5}
 body.theme-blanc .ff-material{width:100%;opacity:.65}
 body.platform-next .platform-card-grid>article>p{font-size:16px;line-height:1.55}
 html[data-typeface] body.firms-next .cf-intro h1{font-size:36px;line-height:1.1;letter-spacing:-.035em}
 body.firms-next .cf-intro-copy>p:not(.pn-eyebrow){font-size:16px;line-height:1.6}
 body.theme-blanc :is(.pp-faq,.cf-faq-section) summary{font-size:18px;line-height:1.4}
 @media(prefers-reduced-motion:reduce){.mobile-solutions>summary svg{transition:none}}
}
@media(max-width:760px){
 /* Supporting examples stay readable without becoming a column of giant nested cards. */
 body.firms-next .sm-stage{padding:24px 18px;border-radius:18px}
 body.firms-next .sm-memo{gap:20px}
 body.firms-next .sm-page{padding:24px 20px 38px}
 body.firms-next .sm-page h3{font-size:21px;line-height:1.18}
 body.firms-next .sm-page .sm-lead{font-size:14px;line-height:1.5}
 body.firms-next .sm-kick{font-size:11px}
 body.firms-next .sm-page table{font-size:12px;margin-top:20px}
 body.firms-next .sm-page th,body.firms-next .sm-page td em{font-size:10px}
 body.firms-next .sm-page td em{padding:3px 6px}
 body.firms-next .sm-sign{font-size:12px;line-height:1.4}
 body.firms-next .sm-ann{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 6px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#ffffff40 transparent}
 body.firms-next .sm-ann li{flex:0 0 88%;min-width:0;scroll-snap-align:start;font-size:14px;line-height:1.45;padding:16px;border-radius:12px}
 body.firms-next .sm-ann small{font-size:11px;margin-bottom:8px}
 body.platform-next .pn-stage .pn-demo-tabs{gap:16px;overflow-x:auto;max-width:100%;scrollbar-width:none;padding:0 4px}
 body.platform-next .pn-stage .pn-demo-tabs button{font-size:12px;white-space:nowrap;flex:none;min-height:44px}
 body.platform-next .pn-stage .st-docs{display:flex;overflow-x:auto;gap:12px;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain;padding-bottom:8px}
 body.platform-next .pn-stage .st-doc{flex:0 0 88%;min-width:0;scroll-snap-align:start}
}
