/* Immersive art direction — layered over the content-first experience. */
body.experience-world{--paper:#11120f;--ink:#f2f0e7;--muted:#aaa99e;--line:#ffffff25;--accent:#ff5736;background:var(--paper);overflow-x:clip}
.experience-world main,.experience-world .exp-header,.experience-world .exp-footer{position:relative;z-index:1}
#atmosphere{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.7}
.experience-world:after{content:'';position:fixed;inset:0;z-index:7;pointer-events:none;opacity:.035;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.8' filter='url(%23n)'/%3E%3C/svg%3E")}
.experience-world .exp-header{border:0;padding:28px 4vw;mix-blend-mode:normal}
.experience-world .exp-header nav a,.experience-world .exp-header nav button{padding:10px 0;border-bottom:1px solid #ffffff55}
.experience-world .intro{position:relative;min-height:calc(100svh - 110px);padding:5vh 0 9vh;isolation:isolate}
.experience-world .intro h1{font-size:clamp(75px,13.4vw,220px);line-height:.83;letter-spacing:-.075em;font-weight:700;position:relative;z-index:2;max-width:1000px}
.experience-world .intro h1 em{font-family:Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.075em}
.experience-world .intro>.kicker{letter-spacing:3px;font-weight:400}
.experience-world .intro>p:not(.kicker){max-width:380px;font-size:16px}
.experience-world .solid{border-radius:100px;padding:20px 32px;background:var(--accent);border-color:var(--accent);color:#141410}
.experience-world .solid:hover{background:#f2f0e7;border-color:#f2f0e7;transform:translateY(-3px)}
.hero-object{position:absolute;right:0;top:10%;width:min(39vw,620px);aspect-ratio:1;border-radius:50%;background:#ff0;transform:rotate(13deg);z-index:-1;overflow:hidden;box-shadow:0 50px 100px #0007}
.hero-object img{width:100%;height:100%;object-fit:contain;transform:scale(1.16)}
.hero-caption{position:absolute;right:3%;bottom:10%;font-size:10px;letter-spacing:2px;writing-mode:vertical-rl}
.orbit-word{position:absolute;right:0;top:3%;font:italic 18px Georgia,serif;color:var(--accent);transform:rotate(10deg)}
.experience-world .menu-view{padding:5vh 0 10vh;position:relative;min-height:90svh}
.experience-world .menu-heading h1{font-size:clamp(45px,6.5vw,105px);line-height:.95;font-weight:500}
.experience-world .menu-heading h1 em{font-family:Georgia,serif;font-style:italic}
.experience-world .paths{border:0;position:relative;z-index:2}
.experience-world .path{border:0;padding:14px 0;gap:25px;width:fit-content;max-width:100%;position:relative}
.experience-world .path-text,.experience-world .path.visited .path-text{font-size:clamp(26px,4.6vw,75px);line-height:1.1;letter-spacing:-.055em;font-weight:500;transition:color .25s,transform .4s}
.experience-world .path-arrow{opacity:0;transform:translateX(-15px);transition:.25s}
.experience-world .path:hover .path-arrow,.experience-world .path:focus-visible .path-arrow{opacity:1;transform:translateX(0)}
.experience-world .path:hover .path-text{transform:translateX(12px)}
.menu-preview{position:fixed;top:0;left:0;right:auto;width:clamp(230px,28vw,430px);height:clamp(270px,33vw,480px);max-height:480px;pointer-events:none;z-index:0;opacity:0;transform:rotate(8deg) scale(.8);overflow:hidden;border-radius:48% 48% 12% 12%;background:#ff0;box-shadow:0 30px 100px #0008}
.menu-preview img{width:100%;height:100%;object-fit:contain}.menu-preview span{position:absolute;bottom:22px;left:22px;color:#111;font-size:10px;background:#f2f0e7;padding:8px 12px;border-radius:30px}
.experience-world .journey{animation:none;padding-top:6vh}.experience-world .journey h1{font-size:clamp(42px,7.2vw,116px);font-weight:500}.experience-world .journey h1 em{font-family:Georgia,serif;font-style:italic;font-weight:400}
.experience-world #beautiful{position:relative}.craft-prologue{position:relative;min-height:83svh;display:flex;flex-direction:column;justify-content:center;padding:0 0 8vh}
.craft-prologue h1{position:relative;z-index:2;width:95%;margin-top:35px!important}.craft-prologue h1 .title-line{display:block;overflow:hidden}.craft-prologue h1 .title-line>span{display:block}
.craft-hero-art{position:absolute;right:-3vw;top:4vh;width:46vw;height:46vw;max-height:650px;border-radius:50%;background:#ff0;transform:rotate(-12deg);opacity:.8;overflow:hidden;z-index:0}
.craft-hero-art img{width:100%;height:100%;object-fit:contain;transform:scale(1.1)}
.craft-prologue .craft-intro{position:relative;z-index:2;max-width:520px;font-size:clamp(19px,2vw,28px);line-height:1.4;margin-left:5vw;background:#11120fbb;padding:15px 20px;border-left:1px solid #ff5736}
.scroll-cue{font-size:10px;letter-spacing:3px;display:flex;gap:25px;align-items:center;margin-top:40px}.scroll-cue span{font-size:24px;color:var(--accent)}
.experience-world .craft-meta{border:0;padding:30px 0 60px;justify-content:space-between;color:#aaa99e}
.craft-manifesto{padding:10vh 0 18vh;position:relative;max-width:1150px}.craft-manifesto p{font-size:clamp(31px,5vw,78px);line-height:1.15;letter-spacing:-.045em;margin:0}.craft-manifesto .manifesto-word{color:#f2f0e7}.craft-manifesto em{font-family:Georgia,serif;font-weight:400;color:#ff5736}
.experience-world .craft-row{border:0;min-height:95svh;grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr);gap:7vw;padding:10vh 0;position:relative;isolation:isolate}
.experience-world .craft-row:before{content:attr(data-chapter);position:absolute;font-size:clamp(200px,35vw,500px);font-weight:700;letter-spacing:-.09em;color:#ffffff04;left:-5vw;top:0;z-index:-1;line-height:1}
.experience-world .craft-copy{align-self:center;position:relative;z-index:2}.experience-world .craft-copy h2,.experience-world .craft-finale h2{font-size:clamp(38px,5vw,78px);font-weight:400;line-height:.98;letter-spacing:-.055em;margin:25px 0 30px}
.experience-world .craft-copy h2{max-width:480px}.experience-world .craft-copy>p:not(.kicker){color:#bdbcb2;font-size:17px;line-height:1.7;max-width:390px}.experience-world .craft-copy .kicker{color:var(--accent);font-weight:400;letter-spacing:2px}
.experience-world .craft-visual{position:relative;padding:30px;transform:rotate(4deg);box-shadow:0 40px 90px #0006;border-radius:48% 48% 4px 4px;overflow:hidden}.experience-world .craft-visual img{max-height:600px}.experience-world .craft-visual figcaption{font-size:9px;letter-spacing:1.5px;text-align:center}
.experience-world .craft-row:nth-of-type(2){grid-template-columns:1.2fr .8fr}.experience-world .craft-row:nth-of-type(2) .craft-copy{grid-column:2;grid-row:1}.experience-world .craft-row:nth-of-type(2) .craft-visual{grid-column:1;grid-row:1;transform:rotate(-5deg);border-radius:4px 40% 4px 4px;margin-left:-5vw}
.experience-world .craft-row:nth-of-type(3) .craft-visual{border-radius:4px;transform:rotate(2deg);padding:12px;background:#f4f4f4}.experience-world .craft-row:nth-of-type(4) .craft-visual{border-radius:100px;transform:rotate(-7deg);margin-right:-3vw}
.experience-world .craft-finale{border:0;padding:12vh 0 6vh;text-align:center}.experience-world .craft-finale h2{font-size:clamp(50px,8vw,125px);margin:30px 0}.experience-world .comparison{height:clamp(300px,45vw,680px);border-radius:8px;transform:rotate(-1deg);margin:65px 0 25px;box-shadow:0 40px 100px #0006}
.experience-world .compare-line{background:#111;color:#111}.experience-world .compare-handle{background:#111;color:#fff}.experience-world .compare-help{margin-bottom:45px}
.experience-world .journey-note{border-color:#ffffff22}.experience-world .back-menu{color:#f2f0e7;border-color:#ffffff55;margin-bottom:40px}.experience-world .journey-note p{color:#bdbcb2}
.experience-world .product-stage,.experience-world .motion-stage{background:#242720;border-radius:12px 120px 12px 12px}.experience-world .step.active{color:#96b9ff}.experience-world .step span,.experience-world .caption{color:#aaa99e}.experience-world .clean-phone{transform:rotate(7deg);box-shadow:25px 40px 70px #0008}.experience-world .route-canvas{border-radius:50% 50% 8px 8px;overflow:hidden;color:#111}.experience-world .failure-stage video{border-radius:8px 100px 8px 8px}.experience-world .clip.active{color:#ff5736}
.reading-rail{position:fixed;right:18px;top:45%;z-index:5;width:2px;height:110px;background:#ffffff25;pointer-events:none;opacity:0}.reading-rail span{display:block;width:100%;height:100%;background:var(--accent);transform:scaleY(0);transform-origin:top}
.experience-world .exp-footer{border-color:#ffffff20}
@media(min-width:1000px){.experience-world .craft-row:nth-of-type(3) .craft-copy{padding-left:4vw}.experience-world .craft-row:nth-of-type(4){padding-top:18vh;padding-bottom:18vh}}
@media(max-width:750px){#atmosphere{opacity:.4}.hero-object{width:65vw;right:-14vw;top:13%;opacity:.45}.hero-caption{display:none}.experience-world .intro h1{font-size:clamp(75px,17vw,130px)}.experience-world .path{padding:19px 0;gap:12px}.experience-world .path-text,.experience-world .path.visited .path-text{font-size:clamp(22px,5.5vw,40px)}.menu-preview{display:none}.craft-prologue{min-height:80svh}.craft-hero-art{width:80vw;height:80vw;right:-20vw;top:10vh;opacity:.45}.craft-prologue .craft-intro{margin-left:0;font-size:19px;max-width:95%;padding:12px}.experience-world .craft-meta{padding-bottom:20px}.craft-manifesto{padding:8vh 0}.experience-world .craft-row,.experience-world .craft-row:nth-of-type(2){display:flex;flex-direction:column;gap:35px;min-height:0;padding:7vh 0}.experience-world .craft-copy{align-self:stretch}.experience-world .craft-copy h2{font-size:43px}.experience-world .craft-visual,.experience-world .craft-row:nth-of-type(2) .craft-visual,.experience-world .craft-row:nth-of-type(4) .craft-visual{width:100%;margin:0;padding:20px;transform:rotate(2deg);border-radius:65px 65px 4px 4px}.experience-world .craft-row:nth-of-type(2) .craft-visual{transform:rotate(-2deg)}.experience-world .craft-row:before{font-size:60vw;top:0;left:-6vw}.experience-world .comparison{margin-top:35px}.experience-world .product-stage,.experience-world .motion-stage{border-radius:10px 55px 10px 10px}.reading-rail{right:6px}.experience-world .journey h1{font-size:clamp(37px,8vw,60px)}.experience-world .intro .solid{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){.hero-object,.craft-hero-art,.experience-world .craft-visual,.experience-world .comparison,.experience-world .clean-phone{transform:none!important}#atmosphere{display:none}.experience-world .path:hover .path-text{transform:none}}

.experience-world .gateway-main{position:relative;padding-top:9vh;padding-bottom:8vh;min-height:calc(100svh - 165px)}
.experience-world .gateway-main h1{font-weight:500;line-height:.92;letter-spacing:-.065em;font-size:clamp(60px,9.5vw,155px)}
.experience-world .gateway-main h1 em{font-family:Georgia,serif;font-style:italic;font-weight:400}
.experience-world .choices{gap:8vw}.experience-world .choice{border-color:#ffffff45;position:relative;padding-top:25px}.experience-world .choice strong{font-weight:400;letter-spacing:-.05em}.experience-world .choice>span:last-child{color:#aaa99e}
.experience-world .choice:hover strong>span{transform:rotate(45deg);transition:transform .35s}

/* The portrait rotates as a whole; each photograph stays intact. */
.portrait-orbit{position:absolute;right:0;top:10%;width:min(39vw,620px);z-index:1}
.portrait-orbit .hero-object{position:relative;top:auto;right:auto;width:100%;z-index:auto;transform:rotate(-4deg);background:#f2f0e7}
.portrait-next{display:block;position:relative;border:0;padding:0;width:100%;height:100%;border-radius:50%;overflow:hidden;background:none;cursor:pointer}
.hero-object .portrait-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none;opacity:0;transition:opacity .8s ease,transform 1.2s ease;pointer-events:none}
.hero-object .portrait-frame.is-current{opacity:1}.portrait-next:hover .portrait-frame.is-current{transform:scale(1.035)}
.portrait-tip{position:absolute;bottom:12%;left:50%;transform:translateX(-50%);font-size:9px;font-weight:700;letter-spacing:1px;background:#111;color:#f2f0e7;padding:12px 17px;border-radius:30px;white-space:nowrap;opacity:0;transition:opacity .25s}
.portrait-next:hover .portrait-tip,.portrait-next:focus-visible .portrait-tip{opacity:1}.portrait-next:focus-visible{outline:3px solid #ff5736;outline-offset:-8px}
.portrait-controls{display:flex;align-items:center;justify-content:center;gap:25px;font-size:10px;margin-top:35px;letter-spacing:1px;color:#f2f0e7}
.portrait-controls button{background:none;border:0;color:inherit;font-size:10px;padding:10px;cursor:pointer}.portrait-controls button:hover{color:#ff5736}
.portrait-caption{color:#aaa99e;font-size:9px;letter-spacing:1.5px;text-align:center;line-height:1.6;margin:4px 0}
@media(min-width:1000px){.experience-world #intro h1{pointer-events:none}.experience-world #intro>p{max-width:45%}.experience-world #intro .solid{position:relative;z-index:3}}
@media(max-width:750px){.portrait-orbit{position:relative;top:auto;right:auto;width:70vw;align-self:flex-end;margin:30px 0 0;z-index:2}.portrait-orbit .hero-object{opacity:1;width:100%;right:auto;top:auto}.experience-world #intro{padding-top:4vh}.portrait-controls{margin-top:22px;gap:18px}.portrait-tip{opacity:1;font-size:8px;padding:10px 14px}.experience-world #intro .orbit-word{display:none}}
@media(prefers-reduced-motion:reduce){.hero-object .portrait-frame{transition:none}.portrait-orbit .hero-object{transform:none!important}.portrait-next:hover .portrait-frame.is-current{transform:none}}

@media(prefers-reduced-motion:reduce) and (min-width:751px){.experience-world .menu-preview{left:auto;right:5vw;top:30vh;transform:none!important}}
