/* User-directed motion pass. final.css remains the Figma composition of record. */
.hero-field{background:#000 url('assets/figma/144-3327/fcf8f.png') center/cover no-repeat}
.hero-field .hero-reel{opacity:0!important;pointer-events:none}
.fc-scene{width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}
.fs-why-intro,.fs-why-bottom,.fd-story>p,.fd-actions,.fd-portrait figcaption{z-index:2}
.fd-portrait{overflow:hidden;border-radius:20px}
.fd-story>.iv2-lens-patch{z-index:0}
.dev-page .fd-opening,.dev-page .fd-bio{color:#d7d9d5}
[data-theme=light] .dev-page .fd-opening,[data-theme=light] .dev-page .fd-bio{color:#333}
.site-header.is-compact{background:color-mix(in srgb,var(--ink) 65%,transparent);backdrop-filter:blur(22px) saturate(1.25);-webkit-backdrop-filter:blur(22px) saturate(1.25);border-bottom:1px solid color-mix(in srgb,var(--paper) 10%,transparent)}
.intro-stage.is-about .hero-field:after,.intro-stage.is-about .film-shade,.about-content:before{background:none;opacity:0}
.intro-stage.is-about .hero-logo{filter:brightness(1.3);z-index:8}
.about-content h2{font-size:clamp(25px,3.8vw,55px);text-shadow:0 2px 12px #0008}
.about-description{font-size:clamp(15px,1.35vw,19px);line-height:1.8;width:min(780px,80vw);text-wrap:pretty;text-shadow:0 1px 5px #000,0 1px 18px #0008}
@media(max-width:700px){.about-content h2{font-size:clamp(23px,6vw,36px)}.about-description{font-size:13px;line-height:1.8;width:calc(100% - 44px)}}

/* Finite blur-to-clear entrances preserve real text and normal line wrapping. */
.pm-copy.iv2-motion-target{filter:blur(var(--iv2-reveal-blur,0px))}
.pm-copy:focus-within{filter:none;opacity:1;translate:none}
.pm-title{background:linear-gradient(110deg,#d5d9df 5%,#f4f5f3 25%,#fff 38%,#c5cbd3 53%,#f6f5f1 68%,#fff 82%,#d5d9df 96%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;animation:title-sheen 12s ease-in-out infinite alternate;animation-play-state:paused}
.pm-title.pm-visible{animation-play-state:running}
.pm-vector-title{position:relative}
.hero-heading.pm-vector-title{position:absolute}
.pm-vector-title>img{opacity:0}
.pm-vector-title:after{content:'';position:absolute;inset:0;mask:var(--title-art) center/100% 100% no-repeat;-webkit-mask:var(--title-art) center/100% 100% no-repeat;background:linear-gradient(110deg,#b8bfca 5%,#fff 38%,#a5abb6 53%,#fff 82%,#b8bfca 96%);background-size:240% 100%;animation:title-sheen 12s ease-in-out infinite alternate;animation-play-state:paused;pointer-events:none}
.pm-vector-title.pm-visible:after{animation-play-state:running}
@keyframes title-sheen{from{background-position:0% 50%}to{background-position:100% 50%}}

/* Each atmosphere inherits the named clip's colour family. Only a soft,
   low-opacity surface drifts; glyph contrast and glass copy remain intact. */
.fc-chapter,.fs-plan,.fs-ai-gallery,.fs-device-gallery{--aura-a:105 115 138;--aura-b:163 150 117;position:relative;isolation:isolate}
#design-intent{--aura-a:166 130 58;--aura-b:100 120 94}
#design-colour{--aura-a:126 82 158;--aura-b:203 123 61}
#design-geometry{--aura-a:119 137 163;--aura-b:109 130 118}
#design-typography{--aura-a:143 146 161;--aura-b:114 106 138}
#design-art{--aura-a:26 98 141;--aura-b:119 83 149}
#design-execution{--aura-a:110 110 124;--aura-b:144 139 121}
[data-plan-card=launch]{--aura-a:128 20 69;--aura-b:205 134 26}
[data-plan-card=business]{--aura-a:155 63 86;--aura-b:99 125 129}
[data-plan-card=signature]{--aura-a:100 57 134;--aura-b:141 144 56}
.fs-ai-gallery{--aura-a:36 115 91;--aura-b:98 112 151}
.fc-chapter:before,.fs-plan:before,.fs-ai-gallery:before,.fs-device-gallery:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 12% 47%,rgb(var(--aura-a)/.11),transparent 62%),radial-gradient(ellipse at 88% 62%,rgb(var(--aura-b)/.10),transparent 60%);animation:aura-drift 18s ease-in-out infinite alternate;animation-play-state:paused}
.pm-visible:before{animation-play-state:running}
.ascii-scene:after{content:'';position:absolute;inset:0;pointer-events:none;mix-blend-mode:screen;background:radial-gradient(ellipse at 0 55%,rgb(var(--aura-a)/.11),transparent 60%),radial-gradient(ellipse at 100% 75%,rgb(var(--aura-b)/.10),transparent 58%);animation:aura-drift 18s ease-in-out infinite alternate;animation-play-state:paused;opacity:.8}
.pm-visible .ascii-scene:after{animation-play-state:running}
@keyframes aura-drift{from{transform:translate3d(0,-1.2%,0) scale(.96);opacity:.62}to{transform:translate3d(0,1.2%,0) scale(1);opacity:1}}

/* Scroll-reactive bar geometry, without stretching labels or moving targets. */
.fs-bar{background:transparent;isolation:isolate}
.fs-bar:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(110deg,#303234db,#292b2be8);border:1px solid #ffffff18;border-left:0;box-shadow:inset 0 1px 0 #ffffff0a;transform-origin:left center;transform:scale(var(--bar-x,1),var(--bar-y,1))}
.fs-toggle{background:linear-gradient(140deg,#282828,#161616);border:1px solid #ffffff1c;box-shadow:inset 0 1px 0 #ffffff18}
.is-open>.fs-bar .fs-toggle{background:linear-gradient(140deg,#8d9191,#626667)}
.fs-plan-rails button,.fs-engineering-rails button{position:relative;isolation:isolate;background:transparent!important;overflow:visible}
.fs-plan-rails button:before,.fs-engineering-rails button:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(150deg,#3b3d3e,#232526);border:1px solid #ffffff12;transform-origin:center bottom;transform:scaleY(calc(1 - var(--rail-wave,0)*var(--rail-factor,1)));transition:background .3s}
.fs-plan-rails button:nth-child(2n),.fs-engineering-rails button:nth-child(2n){--rail-factor:1.5}
.fs-plan-rails button:nth-child(3n),.fs-engineering-rails button:nth-child(3n){--rail-factor:.5}
.fs-plan-rails button[aria-selected=true]:before,.fs-engineering-rails button[aria-selected=true]:before{background:linear-gradient(150deg,#6b7071,#474b4c);border-color:#ffffff38}
.fs-plan-copy li{font-size:clamp(13px,.9722cqw,18px);line-height:1.65}
.fs-plan-summary>p{font-size:clamp(13px,1.04cqw,18px)}
.fs-bar h3 button{font-size:clamp(14px,1.3889cqw,22px)}
.fs-engineering li a{font-size:clamp(14px,1.3889cqw,21px)}
.fs-discuss,.fs-subnav button,.fs-device-switch button,.fs-portfolio-link{min-height:44px}
.fs-discuss,.fs-subnav button{font-size:clamp(11px,1.11cqw,16px)}
.fs-content{scroll-margin-top:calc(var(--header) + 24px)}

/* Same Figma crops, scaled down together into a single viewing surface. */
.fs-device-gallery{--device-h:clamp(250px,39svh,420px)}
.fs-phones{scroll-behavior:smooth;scroll-snap-type:x proximity;overscroll-behavior-x:contain;padding-top:0;padding-bottom:20px}
.fs-phones>div{height:var(--device-h)}
.fs-phone-group{width:calc(var(--device-h)*1.681);margin-left:calc(var(--device-h)*-.0795)}
.fs-phone-group+.fs-phone-crop{margin-left:calc(var(--device-h)*-.1247)}
.fs-phone-crop{width:calc(var(--device-h)*.50685)}
.fs-phone-crop.study-0{width:calc(var(--device-h)*.53425)}
.fs-desktop-stage{height:clamp(250px,40svh,460px);width:min(100%,calc(40svh * 1.725));min-height:0;margin:auto;aspect-ratio:1333/773;border:1px solid #ffffff18;box-shadow:0 20px 80px #0003}
.fs-desktop .fs-console-symbol{width:clamp(45px,6vw,90px);bottom:-14px;right:12px}
.fs-desktop-pagination{justify-content:center;margin-top:20px}
.fs-device-switch{margin-top:20px;justify-content:center;max-width:none}
.fs-device-switch button{min-width:110px}
.fs-device-gallery [data-lens]{overflow:hidden}
.fs-desktop-stage figure{border-radius:inherit}

.fs-ai-gallery{width:100%;max-width:none;padding:0 3.54cqw;gap:26px}
.fs-ai-intro{display:flex;align-items:end;justify-content:space-between;gap:48px}
.fs-ai-intro .eyebrow{font-size:10px;color:#b9c4c1;margin:0 0 18px}
.fs-ai-intro h4{font:400 clamp(24px,2.7vw,42px)/1.25 var(--display);margin:0;letter-spacing:-.02em}
.fs-ai-intro>p{font-size:12px;line-height:1.9;color:#b8bfbb;max-width:370px;margin:0}
.fs-ai-studies{display:grid;grid-template-columns:.92fr 1.08fr;gap:24px}
.fs-ai-study{height:clamp(390px,44svh,510px);position:relative;overflow:hidden;border:1px solid #ffffff26;border-radius:20px;background:#101413;isolation:isolate}
.fs-ai-visual{position:absolute;inset:0;overflow:hidden}
.fs-ai-visual>img{width:100%;height:100%;object-fit:cover;display:block}
.fs-ai-study:first-child .fs-ai-visual>img{object-position:center 93%}
.fs-ai-study:nth-child(2) .fs-ai-visual>img{object-fit:cover;object-position:center top}
.fs-ai-glass{position:absolute;bottom:16px;left:16px;right:16px;border:1px solid #ffffff25;border-radius:14px;background:linear-gradient(140deg,#252b29dd,#151918e8);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:22px 24px;color:#f1f3ef;z-index:2;box-shadow:0 10px 30px #0003}
.fs-study-number{font-size:9px;letter-spacing:.12em;color:#c2cdc6}
.fs-ai-glass h5{font:400 clamp(18px,1.5vw,24px)/1.3 var(--mono);margin:13px 0 10px;letter-spacing:-.06em}
.fs-ai-glass p{font-size:12px;line-height:1.8;max-width:48ch;color:#dde3dd;margin:0}
.fs-ai-glass ul{display:flex;gap:9px;flex-wrap:wrap;list-style:none;margin:17px 0 0;padding:0}
.fs-ai-glass li{font-size:9px;border-top:1px solid #ffffff30;padding:8px 0 0;flex:1;white-space:nowrap;color:#c4cfc9}
.fs-ai-footer{display:flex;justify-content:space-between;align-items:center;gap:22px}
.fs-ai-footer>p{font-size:12px;color:#c0c7c3;line-height:1.8}
.fs-ai-footer .fs-discuss{gap:24px;background:linear-gradient(120deg,#303936,#252c2a);border:1px solid #ffffff24;font-size:12px}
.fs-why-ai{height:auto;min-height:520px;padding:0 3.54cqw;display:flex;align-items:center}
.fs-why-ai-block{width:67%;padding:45px 13% 45px 35px;height:auto;background:linear-gradient(120deg,#292d2c,#1c201f);border:1px solid #ffffff1c;border-radius:16px}
.fs-why-ai h4{font:400 clamp(24px,2.6vw,40px)/1.3 var(--display);margin:20px 0 26px}
.fs-why-ai-block>p:not(.eyebrow),.fs-why-ai li{font-size:13px;line-height:1.9;color:#d3dcd7}
.fs-why-ai ul{list-style:none;padding:0;margin:26px 0}
.fs-why-ai li{border-top:1px solid #ffffff26;padding:12px 0}
.fs-why-ai .fs-discuss{font-size:12px;justify-content:space-between;white-space:normal;background:#ffffff12;gap:20px}
.fs-why-ai-mark{left:59%;top:50%;transform:translateY(-50%);width:20%;background:linear-gradient(145deg,#7f8b85aa,#343d39cc);backdrop-filter:blur(20px);border:1px solid #ffffff28;box-shadow:0 18px 70px #0003}
.fs-why-ai-mark img{width:42%}
.fs-ai-visual .iv2-lens-patch{border-radius:0}
.iv2-lens img{user-select:none;-webkit-user-drag:none}
.pv-image .iv2-lens-patch{z-index:4}

[data-theme=light] .pm-title{-webkit-text-fill-color:transparent;background-image:linear-gradient(110deg,#333b43 5%,#080909 25%,#222 38%,#56606a 53%,#151719 68%,#050607 82%,#333b43 96%)}
[data-theme=light] .about-content .pm-title{background-image:linear-gradient(110deg,#b8bfca,#fff,#d4d9df,#fff)}
[data-theme=light] .pm-vector-title:after{background-image:linear-gradient(110deg,#333b43,#080909,#56606a,#050607)}
[data-theme=light] .fs-bar:before{background:linear-gradient(110deg,#d9dcdaee,#c5ccc8ee);border-color:#0002}
[data-theme=light] .fs-plan-rails button:before,[data-theme=light] .fs-engineering-rails button:before{background:linear-gradient(140deg,#dde1de,#c9cecb);border-color:#0002}
[data-theme=light] .fs-plan-rails button[aria-selected=true]:before,[data-theme=light] .fs-engineering-rails button[aria-selected=true]:before{background:linear-gradient(150deg,#626b68,#424946)}
[data-theme=light] .fs-ai-intro .eyebrow,[data-theme=light] .fs-ai-intro>p,[data-theme=light] .fs-ai-footer>p{color:#464f4a}
[data-theme=light] .fs-ai-footer .fs-discuss{background:#d2d9d4;color:#171d19;border-color:#0002}
[data-theme=light] .fs-why-ai .pm-title{background-image:linear-gradient(110deg,#c8d0cb,#fff,#dce0db)}
[data-theme=light] .fs-why-ai .fs-discuss{color:#f3f5f1}

@media(min-width:701px) and (max-width:1050px){
 .fs-bar{min-height:105px}.fs-heading{min-height:120px}.fs-bar h3{max-width:48%}.fs-plan-copy{padding-left:24cqw;padding-top:5cqw}.fs-plan-rails{height:30cqw}.fs-plan-summary{padding-top:28px}.fs-addons{min-width:88px}.fs-subnav{gap:20px;flex-wrap:wrap}.fs-subnav .fs-enquiry{margin-left:auto}.fs-ai-intro{gap:24px;align-items:start}.fs-ai-intro>p{max-width:42%}.fs-ai-study{height:450px}.fs-ai-glass{padding:20px 18px}.fs-ai-glass li{font-size:8px}.fs-engineering-rails{gap:1cqw}.fs-engineering-rails button span{font-size:clamp(12px,1.66cqw,18px)}
}
@media(max-width:1050px){.fs-ai-study:first-child .fs-ai-visual>img{transform:translateY(-90px)}.fs-ai-study:nth-child(2) .fs-ai-visual>img{height:55%;object-fit:contain;object-position:center 20px}}
@media(max-width:700px){
 .fc-index{font-size:clamp(9px,2.5vw,11px)}.fc-index a{padding:12px 4px}
 .fs-bar h3{max-width:none;width:auto;flex:1}.fs-bar h3 button{font-size:13px}.fs-bar{padding-right:42px}.fs-portfolio-link{max-width:78px;flex:none;font-size:10px}.fs-plan-copy li{font-size:13px}.fs-engineering li a{font-size:14px}.fs-engineering-rails button{height:235px}.fs-engineering-rails button span{font-size:14px}.fs-subnav [role=tablist]{gap:8px}.fs-subnav button{padding-inline:10px}.fs-plan-summary>p{font-size:12px}
 .fs-device-gallery{--device-h:clamp(250px,37svh,340px)}.fs-device-switch{gap:12px}.fs-device-switch button{flex:none;min-width:110px}.fs-desktop-stage{height:auto;width:100%;min-height:0;aspect-ratio:1333/773}.fs-desktop .fs-console-symbol{width:42px;bottom:-8px}
 .fs-ai-gallery{padding:0 22px;gap:22px}.fs-ai-intro{display:block}.fs-ai-intro h4{font-size:clamp(23px,6vw,32px)}.fs-ai-intro>p{max-width:100%;font-size:12px;line-height:1.8;margin-top:20px}.fs-ai-intro .eyebrow{font-size:9px}.fs-ai-studies{grid-template-columns:1fr;gap:22px}.fs-ai-study{height:440px}.fs-ai-study:nth-child(2){height:400px}.fs-ai-glass{left:12px;right:12px;bottom:12px;padding:21px 19px}.fs-ai-glass h5{font-size:19px}.fs-ai-glass p{font-size:12px}.fs-ai-glass li{font-size:8px}.fs-ai-footer{flex-direction:column;align-items:stretch;gap:16px}.fs-ai-footer .fs-discuss{flex:none}.fs-ai-footer>p{font-size:12px}
 .fs-why-ai{padding:0 22px;min-height:0;display:block}.fs-why-ai-block{width:100%;padding:28px 24px 74px}.fs-why-ai h4{font-size:clamp(18px,5.1vw,25px)}.fs-why-ai-block>p:not(.eyebrow),.fs-why-ai li{font-size:12px}.fs-why-ai-mark{position:relative;left:auto;top:auto;transform:none;margin:-36px 24px 0 auto;width:90px;border-radius:16px}.fs-why-ai-mark img{width:42px}
}
@media(max-width:360px){.fs-ai-gallery,.fs-device-gallery{padding-inline:18px}.fs-ai-glass{padding:18px 15px}.fs-ai-glass h5{font-size:17px}.fs-ai-glass p{font-size:11px}.fs-study-number{font-size:8px}.fs-ai-glass ul{gap:6px}.fs-ai-glass li{font-size:7px}.fs-ai-study{height:440px}.fs-ai-intro h4{font-size:22px}}

/* Pause is a complete, readable state; no hidden copy or pointer dependency. */
.pm-still .pm-title,.pm-still .pm-vector-title:after,.pm-still .ascii-scene:after,.pm-still .fc-chapter:before,.pm-still .fs-plan:before,.pm-still .fs-ai-gallery:before,.pm-still .fs-device-gallery:before{animation-play-state:paused!important}
.pm-still .pm-copy,.iv2-motion-paused .pm-copy{opacity:1;filter:none;translate:none}
@media(prefers-reduced-motion:reduce){
 .pm-title,.pm-vector-title:after,.ascii-scene:after,.fc-chapter:before,.fs-plan:before,.fs-ai-gallery:before,.fs-device-gallery:before{animation:none!important}
 .pm-copy{opacity:1!important;filter:none!important;translate:none!important}
 .fs-bar:before,.fs-plan-rails button:before,.fs-engineering-rails button:before{transform:none!important}.fs-phones{scroll-behavior:auto}
}
