.brand-film-root{--film-bone:#f7f4ee;--film-ivory:#eee8dd;--film-warm-gray:#b9b2a8;--film-blue-gray:#8298a3;--film-sage:#899a82;--film-terra:#be866c;--film-violet:#91809b;--film-rose:#c9a0a3;--film-warm-black:#292725;position:fixed;inset:0;width:100%;height:100%;min-height:100dvh;display:flex;align-items:stretch;justify-content:stretch;background:var(--film-bone);overflow:hidden;touch-action:none;z-index:100}.brand-film-root--playing{cursor:none}.brand-film-root--controls-visible{cursor:default}.brand-film-root--exiting{transition:opacity .9s cubic-bezier(.4,0,.2,1);opacity:0;pointer-events:none}.brand-film-welcome{position:absolute;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;background:var(--film-bone,#f7f4ee);opacity:0;pointer-events:none;transition:opacity .7s cubic-bezier(.22,1,.36,1)}.brand-film-welcome--visible{opacity:1;pointer-events:auto}.brand-film-welcome--leaving{opacity:0;pointer-events:none;transition:opacity .7s cubic-bezier(.4,0,.2,1)}.brand-film-welcome-hit{width:min(92vw,920px);border:0;background:transparent;cursor:pointer;padding:clamp(1.5rem,4vh,3rem);text-align:center;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:clamp(1rem,2.5vh,1.75rem)}.brand-film-welcome-eyebrow{margin:0;font-family:var(--font-body);font-size:clamp(.7rem,1.1vw,.85rem);letter-spacing:.35em;text-transform:uppercase;color:var(--ink-faint);opacity:0;transform:translateY(14px);animation:welcome-rise 1.1s cubic-bezier(.22,1,.36,1) .15s forwards}.brand-film-welcome-title{margin:0;font-family:var(--font-display);font-weight:300;font-size:clamp(2.8rem,9vw,6.5rem);line-height:1.05;letter-spacing:-.02em;color:var(--ink);opacity:0;transform:translateY(22px);animation:welcome-rise 1.2s cubic-bezier(.22,1,.36,1) .28s forwards}.brand-film-welcome-title span{display:inline-block;letter-spacing:.18em;font-weight:400}.brand-film-welcome-hint{margin:0;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-family:var(--font-body);font-size:clamp(.8rem,1.2vw,1rem);letter-spacing:.1em;color:var(--ink-muted);opacity:0;transform:translateY(12px);animation:welcome-rise 1.1s cubic-bezier(.22,1,.36,1) .55s forwards}.brand-film-welcome-hint-arrow{display:block;font-size:1.15rem;color:var(--ink-faint);animation:welcome-hint-bounce 1.8s ease-in-out 1.2s infinite}@keyframes welcome-rise{to{opacity:1;transform:translateY(0)}}@keyframes welcome-hint-bounce{0%,to{transform:translateY(0);opacity:.55}50%{transform:translateY(7px);opacity:1}}@media (prefers-reduced-motion:reduce){.brand-film-welcome-eyebrow,.brand-film-welcome-hint,.brand-film-welcome-title{animation:none;opacity:1;transform:none}.brand-film-welcome-hint-arrow{animation:none}}.brand-film-sound-fab{position:absolute;left:max(1rem,env(safe-area-inset-left));bottom:max(1.25rem,env(safe-area-inset-bottom));z-index:90;width:48px;height:48px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);background:color-mix(in srgb,var(--film-bone,#f7f4ee) 88%,transparent);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(8px);box-shadow:0 8px 28px color-mix(in srgb,var(--ink) 8%,transparent);transition:transform .35s cubic-bezier(.22,1,.36,1),background .3s ease,color .3s ease,opacity .3s ease}.brand-film-sound-fab svg{width:22px;height:22px}.brand-film-sound-fab:hover{transform:scale(1.06)}.brand-film-sound-fab:focus-visible{outline:1px solid color-mix(in srgb,var(--ink) 40%,transparent);outline-offset:3px}.brand-film-sound-fab--off{color:var(--ink-faint);opacity:.85}.brand-film-sound-fab--on{color:var(--ink)}.brand-film-viewport{position:relative;flex:1;width:100%;height:100%;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.brand-film-stage{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;background:var(--film-bone);transform-origin:center center;will-change:transform}.brand-film-perspective{position:absolute;inset:0;perspective:1200px;perspective-origin:50% 42%;overflow:hidden}.brand-film-world{inset:0;transform-origin:50% 50%;will-change:transform}.brand-film-fog,.brand-film-world{position:absolute;transform-style:preserve-3d}.brand-film-fog{inset:-10%;pointer-events:none}.brand-film-fog--far{background:radial-gradient(ellipse 70% 55% at 55% 45%,transparent 20%,color-mix(in srgb,var(--film-bone) 55%,transparent) 70%,color-mix(in srgb,var(--film-bone) 85%,transparent) 100%);transform:translateZ(-500px) scale(1.6);opacity:.7}.brand-film-fog--mid{background:radial-gradient(ellipse 60% 50% at 48% 50%,transparent 30%,color-mix(in srgb,var(--film-bone) 40%,transparent) 100%);transform:translateZ(-220px) scale(1.25);opacity:.45}.brand-film-hero-layer{inset:0;transform-style:preserve-3d;transform:translateZ(40px);z-index:5}.brand-film-hero-layer,.story-figure{position:absolute;pointer-events:none}.story-figure{width:min(28vw,280px);height:min(55vh,520px);transform-style:preserve-3d;transform-origin:center bottom;will-change:transform,opacity,filter;margin:0}.story-figure-svg{width:100%;height:100%;overflow:visible}.story-figure-stroke{fill:none;stroke:var(--ink,#121212);stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}.story-figure-stroke--light{stroke:var(--ink-muted,#5c5c5c);stroke-width:1.05;opacity:.4}.story-figure--ghost .story-figure-stroke{stroke:var(--ink-faint,#9a9590);stroke-width:1.15;opacity:.85}.story-figure--whisper .story-figure-stroke{stroke:var(--ink-faint,#9a9590);stroke-width:1;opacity:.7}.story-figure--companion .story-figure-stroke{stroke:var(--ink-muted,#5c5c5c);stroke-width:1.25}.story-figure--forward .story-figure-stroke{stroke:var(--ink,#121212);stroke-width:1.4}@media (max-width:767px){.story-figure{width:min(36vw,160px);height:min(38vh,320px)}.brand-film-perspective{perspective:900px}}.brand-film-washes{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.brand-film-wash{position:absolute;border-radius:50%;transform:translate(-50%,-50%) scale(.82);filter:blur(72px);will-change:opacity,transform;mix-blend-mode:multiply}.brand-film-geometry{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}.geo-ornament{position:absolute;width:clamp(64px,9vw,110px);height:clamp(64px,9vw,110px);opacity:.28}.geo-ornament--tl{top:clamp(4%,6vh,8%);left:clamp(3%,4vw,6%)}.geo-ornament--tr{top:clamp(5%,7vh,10%);right:clamp(3%,5vw,7%)}.geo-ornament--bl{bottom:clamp(10%,12vh,16%);left:clamp(4%,5vw,8%)}.geo-ornament--br{bottom:clamp(8%,10vh,14%);right:clamp(4%,6vw,9%)}.geo-ornament--ml{top:46%;left:clamp(2%,3vw,5%);width:clamp(48px,6vw,72px);height:clamp(48px,6vw,72px);opacity:.18}.geo-stroke{fill:none;stroke:var(--ink,#121212);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;opacity:.55}.geo-stroke--light{stroke:var(--ink-muted,#5c5c5c);stroke-width:1;opacity:.45}.geo-stroke--faint{stroke:var(--ink-faint,#9a9590);stroke-width:.9;opacity:.55}.geo-dot{fill:var(--ink-faint,#9a9590);opacity:.45}.geo-spin-slow{animation:geo-spin 48s linear infinite}.geo-spin-slower{animation:geo-spin 72s linear infinite}.geo-spin-reverse{animation:geo-spin-rev 56s linear infinite}@keyframes geo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes geo-spin-rev{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}@media (max-width:767px){.geo-ornament{width:clamp(44px,14vw,68px);height:clamp(44px,14vw,68px);opacity:.2}.geo-ornament--ml{display:none}}@media (prefers-reduced-motion:reduce){.geo-spin-reverse,.geo-spin-slow,.geo-spin-slower{animation:none}}.brand-film-texture{position:absolute;inset:0;pointer-events:none;opacity:.025;mix-blend-mode:multiply;z-index:1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.brand-film-character-wrap{position:absolute;right:clamp(2%,6vw,10%);bottom:clamp(2%,4vh,8%);width:min(48vw,560px);height:min(88vh,960px);transform-origin:center bottom;will-change:transform,opacity}@media (max-width:767px){.brand-film-character-wrap{left:8%;right:8%;width:auto;bottom:2%;height:min(55vh,520px)}}.brand-film-character-svg{width:100%;height:100%;overflow:visible}.brand-film-figure{transform-origin:200px 560px}.brand-film-stroke{fill:none;stroke:var(--ink,#121212);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.brand-film-stroke--light{stroke:var(--ink-muted,#5c5c5c);stroke-width:1.1;opacity:.45}.brand-film-hand{transform-origin:236px 310px}.brand-film-pigment,.brand-film-stain{will-change:opacity,transform}.brand-film-pigment{transform-origin:center}.brand-film-typography{position:absolute;inset:0;pointer-events:none;z-index:10}.brand-film-line{position:absolute;left:clamp(6%,8vw,12%);right:clamp(38%,42vw,48%);opacity:0;transform:translateY(18px);will-change:opacity,transform;margin:0;max-width:28rem}@media (max-width:767px){.brand-film-line{left:6%;right:6%;max-width:none}}.brand-film-line--editorial{font-family:var(--font-display);font-weight:300;font-size:clamp(1.75rem,4.2vw,4.25rem);line-height:1.15;letter-spacing:-.02em;color:var(--ink)}.brand-film-line--functional{font-family:var(--font-body);font-weight:400;font-size:clamp(.85rem,1.35vw,1.15rem);line-height:1.6;letter-spacing:.03em;color:var(--ink-muted);max-width:22rem}.brand-film-line--wordmark{font-family:var(--font-display);font-weight:400;font-size:clamp(3rem,8vw,7rem);letter-spacing:.28em;color:var(--ink);max-width:none}.brand-film-line--slot-brand-top{top:clamp(10%,14vh,18%);left:clamp(6%,8vw,12%);right:auto;width:auto;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:.32em;text-align:left}.brand-film-line--slot-brand-center{left:50%;right:auto;top:42%;width:90%;max-width:none;text-align:center;transform:translate(-50%,-50%) translateY(18px)}.brand-film-line--pillar{left:clamp(6%,8vw,12%);right:auto;font-family:var(--font-display);font-size:clamp(1.4rem,2.8vw,2.4rem);font-weight:300;letter-spacing:.14em;color:color-mix(in srgb,var(--ink) 65%,transparent);max-width:none}.brand-film-line--whisper{left:auto;right:clamp(8%,14vw,22%);width:auto;max-width:18rem;text-align:right;font-family:var(--font-body);font-size:clamp(.8rem,1.2vw,1.05rem);font-style:italic;color:var(--ink-faint);letter-spacing:.04em}@media (max-width:767px){.brand-film-line--whisper{right:6%;left:auto;max-width:55%}}.brand-film-line--emphasis{font-size:clamp(1.5rem,3.5vw,3.25rem);line-height:1.28;max-width:32rem}.brand-film-line--slot-a{top:clamp(14%,18vh,24%)}.brand-film-line--slot-b{top:clamp(28%,34vh,40%)}.brand-film-line--slot-pillar{top:clamp(30%,36vh,42%)}.brand-film-line--slot-whisper{top:clamp(18%,24vh,30%)}.brand-film-line--slot-below-brand{top:58%;width:min(90%,36rem);max-width:36rem}.brand-film-line--slot-below-brand,.brand-film-line--slot-footer{left:50%;right:auto;text-align:center;transform:translate(-50%) translateY(18px)}.brand-film-line--slot-footer{top:72%;width:min(90%,28rem);max-width:28rem}@media (max-width:767px){.brand-film-line--slot-a{top:10%}.brand-film-line--slot-b{top:26%}.brand-film-line--slot-pillar{top:28%}.brand-film-line--slot-whisper{top:12%}.brand-film-line--slot-below-brand{top:56%}.brand-film-line--slot-footer{top:70%}.brand-film-line--editorial{font-size:clamp(1.45rem,6.5vw,2.1rem)}}.brand-film-controls{position:absolute;left:0;right:0;bottom:0;z-index:30;padding:1.25rem clamp(1.25rem,4vw,3rem) calc(1.25rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.75rem;background:linear-gradient(to top,color-mix(in srgb,var(--film-bone) 94%,transparent) 0,color-mix(in srgb,var(--film-bone) 40%,transparent) 55%,transparent 100%);opacity:0;transition:opacity .5s ease;pointer-events:none}.brand-film-controls--visible{opacity:1;pointer-events:auto}.brand-film-progress{width:100%;height:2px;appearance:none;background:color-mix(in srgb,var(--ink) 12%,transparent);border:0;cursor:pointer}.brand-film-progress::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:var(--ink)}.brand-film-controls-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.brand-film-btn{border:0;background:transparent;color:var(--ink-muted);font-family:var(--font-body);font-size:11px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;padding:.4rem .65rem;transition:color .25s ease}.brand-film-btn:focus-visible,.brand-film-btn:hover{color:var(--ink);outline:none}.brand-film-time{font-family:var(--font-body);font-size:11px;letter-spacing:.18em;color:var(--ink-faint);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.brand-film-character-wrap,.brand-film-line,.brand-film-pigment,.brand-film-stage,.brand-film-stain{will-change:auto}.brand-film-end,.brand-film-end-content,.brand-film-end-cta-arrow,.brand-film-end-hint-arrow{animation:none!important;transition-duration:.01ms!important}}.brand-film-end{position:absolute;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 1.4s cubic-bezier(.22,1,.36,1)}.brand-film-end--visible{opacity:1;pointer-events:auto}.brand-film-end--exiting{opacity:0;transition:opacity 1.1s cubic-bezier(.4,0,.2,1)}.brand-film-end--exiting .brand-film-end-content{transform:translateY(-18px) scale(.97);opacity:0;transition:transform 1.1s cubic-bezier(.4,0,.2,1),opacity .9s ease}.brand-film-end--visible .brand-film-end-content{transform:translateY(0);opacity:1}.brand-film-end-veil{position:absolute;inset:0;background:color-mix(in srgb,var(--film-bone,#f7f4ee) 78%,transparent);backdrop-filter:blur(3px)}.brand-film-end-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:clamp(1rem,2.5vh,1.75rem);padding:2rem;text-align:center;transform:translateY(28px);opacity:0;transition:transform 1.5s cubic-bezier(.22,1,.36,1) .15s,opacity 1.3s ease .15s}.brand-film-end-eyebrow{margin:0;font-family:var(--font-body);font-size:clamp(.7rem,1.1vw,.85rem);letter-spacing:.32em;text-transform:uppercase;color:var(--ink-faint)}.brand-film-end-cta{display:inline-flex;align-items:center;justify-content:center;gap:clamp(.75rem,2vw,1.5rem);border:0;background:transparent;cursor:pointer;padding:clamp(.5rem,1.5vh,1rem) clamp(1rem,3vw,2rem);color:var(--ink);transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .35s ease}.brand-film-end-cta:hover{transform:translateX(6px)}.brand-film-end-cta:focus-visible{outline:1px solid color-mix(in srgb,var(--ink) 35%,transparent);outline-offset:10px}.brand-film-end-cta-label{font-family:var(--font-display);font-weight:300;font-size:clamp(2.6rem,8vw,5.75rem);line-height:1.05;letter-spacing:-.02em;text-shadow:0 1px 0 color-mix(in srgb,var(--film-bone) 40%,transparent)}.brand-film-end-cta-arrow{display:inline-flex;width:clamp(2.5rem,6vw,4rem);height:auto;color:var(--ink);animation:end-arrow-nudge 2.2s ease-in-out infinite}.brand-film-end-cta-arrow svg{width:100%;height:auto}.brand-film-end-hint{margin:0;display:flex;flex-direction:column;align-items:center;gap:.35rem;font-family:var(--font-body);font-size:clamp(.75rem,1.2vw,.95rem);letter-spacing:.08em;color:var(--ink-muted)}.brand-film-end-hint-arrow{display:block;font-size:1.1rem;color:var(--ink-faint);animation:end-hint-bounce 1.8s ease-in-out infinite}@keyframes end-arrow-nudge{0%,to{transform:translateX(0)}50%{transform:translateX(10px)}}@keyframes end-hint-bounce{0%,to{transform:translateY(0);opacity:.55}50%{transform:translateY(-6px);opacity:1}}