@font-face{font-family:Inter;src:url('assets/inter.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{font-family:Inter,Arial,sans-serif;color:#eeeade;background:#071114;color-scheme:dark;--gold:#d9b66f;--pale:#f1d69e;--muted:#b7c0b8;--line:#d9b66f32;scroll-behavior:smooth;scroll-padding-top:24px}
*{box-sizing:border-box}body{margin:0;min-width:300px}button,a,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,select{font:inherit}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--pale);outline-offset:5px}button{border:0}img{display:block;max-width:100%}[hidden]{display:none!important}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:14px;background:var(--gold);color:#071114;transform:translateY(-200%)}.skip-link:focus{transform:none}
.intro{height:100svh;min-height:780px;position:relative;isolation:isolate;overflow:hidden;background:#071114}.intro-world,.intro-shade{position:absolute;inset:0;z-index:-2;pointer-events:none}.intro-world img{height:100%;width:100%;object-fit:cover;object-position:center;filter:saturate(.85)}.intro-shade{z-index:-1;background:linear-gradient(90deg,#031014df 0%,#03101499 38%,#0310140a 78%),linear-gradient(0deg,#051014e8,transparent 40%,#03101433)}
.masthead{position:relative;z-index:8;margin:0 5.5%;height:100px;display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;margin-right:auto}.brand img{width:36px;height:44px;object-fit:contain}.brand>span{font-size:11px;font-weight:600;letter-spacing:2px}.brand small{display:block;font-size:8px;font-weight:400;letter-spacing:1.8px;color:#d4bb89;margin-top:6px}.masthead nav{display:flex;gap:30px}.masthead nav a{font-size:11px;color:#d8d8ca}.masthead nav a:hover,.text-button:hover{color:var(--pale)}.header-sound{display:flex;gap:12px;padding:12px 16px;border:1px solid #d9b66f66;background:#07111466;font-size:10px;color:#ead5aa}.header-sound span{font-size:12px}
.intro-copy{position:absolute;z-index:3;left:7%;top:29%;width:54%;max-width:770px;transition:opacity .65s}.eyebrow{display:flex;align-items:center;gap:13px;font-size:9px;line-height:1.5;letter-spacing:2.3px;color:#dec48f;margin:0 0 25px}.eyebrow>span{width:28px;height:1px;background:var(--gold);flex-shrink:0}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(48px,5.6vw,88px)/1.04 Georgia,'Times New Roman',serif;letter-spacing:-2.8px;margin-bottom:25px}em{font-style:normal;color:var(--pale)}.intro-description{max-width:345px;font-size:13px;line-height:1.9;color:#c5cec2;margin-bottom:29px}.intro-actions{min-height:54px}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:21px;min-height:51px;padding:16px 21px;border:1px solid #f1d69e;background:var(--gold);color:#13221d;font-size:11px;font-weight:600;transition:background .2s}.primary:hover{background:var(--pale)}.primary>span:last-child{font-size:19px;font-weight:400;margin-left:8px}.intro-start>span:first-child{font-size:10px}.sound-hint{font-size:8px;letter-spacing:1.4px;line-height:1.8;color:#b9b798;max-width:360px;margin-top:17px}.speech-controls{display:flex;align-items:center;gap:15px;max-width:350px;height:53px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:10px;color:#d5c7a9;font-variant-numeric:tabular-nums}.speech-controls button{border:1px solid #d9b66f55;background:transparent;width:29px;height:29px;color:var(--pale);font-size:12px}.speech-controls progress{flex:1;min-width:20px;height:2px;accent-color:var(--gold);border:0}.speech-controls progress::-webkit-progress-bar{background:#d9b66f30}.speech-controls progress::-webkit-progress-value{background:var(--gold)}
.intro-actor{position:absolute;z-index:4;height:85%;aspect-ratio:24/34;right:4%;bottom:0;isolation:isolate;transition:opacity .65s;pointer-events:none}.intro-actor:before{content:'';position:absolute;z-index:-1;left:26%;width:48%;height:3%;bottom:4%;background:radial-gradient(ellipse,#000b,transparent 70%);filter:blur(4px)}.portrait-layer{position:absolute;inset:0;height:100%;width:100%;object-fit:contain;object-position:center bottom}.gestures{opacity:0}.is-looping>.greeting{opacity:0}.is-looping>.gestures{opacity:1}.host-name{position:absolute;z-index:5;right:6%;bottom:120px;display:flex;align-items:center;gap:13px;padding:12px 16px;background:#071114ad;backdrop-filter:blur(9px);transition:opacity .65s}.host-name>span{width:22px;height:1px;background:var(--gold)}.host-name strong{font-size:10px;font-weight:500;letter-spacing:2px;color:#eed3a0}.host-name small{display:block;font-size:9px;margin-top:5px;color:#c9cbb9}.intro-dock{position:absolute;z-index:6;left:5.5%;right:5.5%;bottom:27px;display:flex;align-items:center;gap:25px;min-height:40px;border-top:1px solid var(--line);padding-top:17px}.scene-number{font-size:8px;letter-spacing:2px;color:#cdb88e;margin-right:auto}.text-button{display:inline-flex;align-items:center;gap:25px;background:none;color:#e2dfd0;padding:10px 0;font-size:10px}.text-button>span{font-size:16px}.voice-picker{display:flex;align-items:center;gap:12px;font-size:9px;color:#bec3b2}.voice-picker select{background:#0b1719;color:#decca6;border:1px solid var(--line);font-size:10px;padding:7px 25px 7px 9px;max-width:170px}.intro-finished .intro-copy,.intro-finished .intro-actor,.intro-finished .host-name{opacity:0}
.logo-story{height:190svh;min-height:1250px;position:relative;--logo-y:60px;--logo-scale:.92;--sky-y:0px;--reveal:70%;--caption-opacity:1}.logo-stage{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;isolation:isolate;background:#071114;display:flex;align-items:center;justify-content:center}.logo-world,.logo-shade{position:absolute;inset:0;z-index:-2;pointer-events:none}.logo-world img{height:115%;width:100%;object-fit:cover;object-position:65% center;transform:translate3d(0,var(--sky-y),0) scale(1.04);will-change:transform}.logo-shade{z-index:-1;background:linear-gradient(0deg,#071114f5,transparent 58%,#031014a6),linear-gradient(90deg,#03101455,transparent)}.logo-kicker{position:absolute;top:16%;left:7%;font-size:9px;letter-spacing:3.3px;color:#f1d6a0}.logo-monument{width:min(82vw,1190px);transform:translate3d(0,var(--logo-y),0) scale(var(--logo-scale));clip-path:inset(0 var(--reveal) 0 0);will-change:transform,clip-path;filter:drop-shadow(0 14px 36px #0006)}.logo-monument img{width:100%;height:auto}.logo-caption{position:absolute;left:7%;right:7%;bottom:16%;display:flex;justify-content:space-between;align-items:flex-end;gap:40px;opacity:var(--caption-opacity);transform:translateY(calc(var(--logo-y)*.2))}.logo-caption h2{font:400 clamp(30px,3.1vw,48px)/1.12 Georgia,serif;letter-spacing:-1px;margin:0}.logo-caption p{font-size:12px;line-height:1.9;color:#d1d4c6;margin:0}.scroll-cue{position:absolute;bottom:38px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:17px;font-size:8px;letter-spacing:2px;color:#d8caab;white-space:nowrap}.scroll-line{height:29px;width:1px;background:linear-gradient(var(--gold),transparent)}.scene-index{position:absolute;bottom:43px;left:7%;font-size:8px;letter-spacing:1.8px;color:#c6b38c}
.section-shell{width:min(1230px,86%);margin:0 auto}.life{padding-top:140px;padding-bottom:110px}.section-heading{margin-bottom:55px}.section-heading h2,.first-day h2{font:400 clamp(38px,4.6vw,67px)/1.07 Georgia,serif;letter-spacing:-1.8px;margin-bottom:0}.heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:55px}.heading-row>p{font-size:13px;line-height:1.9;color:var(--muted);max-width:310px;margin:0 0 4px}.workbench{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:stretch}.job-visual{position:relative;isolation:isolate;overflow:hidden;min-height:500px;background:#101b1b}.job-visual video{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.film-shade{position:absolute;inset:0;background:linear-gradient(0deg,#031014db,transparent 65%),linear-gradient(180deg,#03101488,transparent 30%)}.film-label{position:absolute;top:26px;left:28px;font-size:8px;letter-spacing:1.7px;color:#ead5aa}.film-caption{position:absolute;bottom:30px;left:30px;font:400 clamp(30px,3vw,43px)/1.13 Georgia,serif;letter-spacing:-.8px;margin:0}.job-panel{padding-top:4px;min-width:0}.job-tabs{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);margin-bottom:47px}.job-tabs button{position:relative;background:none;color:#aebbb2;padding:12px 0 18px;font-size:11px}.job-tabs button[aria-selected=true]{color:var(--pale)}.job-tabs button[aria-selected=true]:after{position:absolute;content:'';height:1px;bottom:-1px;left:0;right:0;background:var(--gold)}.job-count{display:block;color:#bf9f66;font-size:10px;letter-spacing:2px;margin-bottom:20px}.job-panel h3{font:400 clamp(27px,2.5vw,36px)/1.15 Georgia,serif;letter-spacing:-.6px;margin:0 0 22px;min-height:85px}.job-panel #job-copy{font-size:13px;line-height:1.9;color:var(--muted);min-height:95px;max-width:370px;margin:0 0 25px}.job-start{border-top:1px solid var(--line);padding-top:24px}.job-start>span{font-size:8px;letter-spacing:1.8px;color:#d5bd91}.job-start>p{font-size:12px;line-height:1.9;color:#b7c4b9;margin:12px 0 0;max-width:360px}
.connections{padding-top:50px;padding-bottom:130px}.connections .section-heading{margin-bottom:65px}.connection-row{position:relative;display:grid;grid-template-columns:1fr 1.6fr 1.6fr;align-items:start;gap:40px;padding:38px 40px 38px 0;border-top:1px solid var(--line)}.connection-row:last-child{border-bottom:1px solid var(--line)}.row-number{color:#c3a575;font-size:8px;letter-spacing:1.8px;margin-top:9px}.connection-row h3{font:400 clamp(25px,2.5vw,36px)/1.16 Georgia,serif;letter-spacing:-.6px;margin:0}.connection-row p{font-size:12px;line-height:1.95;color:var(--muted);max-width:360px;margin:5px 0 0}.row-mark{position:absolute;right:0;top:45px;color:var(--gold);font-size:21px}
.first-day{position:relative;isolation:isolate;overflow:hidden;padding:115px 0 100px;background:#091718}.first-day-background{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#051114f7,#051114c9),url('assets/city.webp') center 75%/cover}.first-day-inner{display:grid;grid-template-columns:1fr 1fr;column-gap:100px;row-gap:55px}.first-steps{list-style:none;margin:0;padding:0}.first-steps li{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.first-steps li>span{font-size:10px;letter-spacing:1px;color:#c5a56f;margin-top:3px}.first-steps h3{font-size:14px;font-weight:500;margin:0 0 10px}.first-steps p{font-size:12px;line-height:1.9;color:#afbeb4;margin:0;max-width:350px}.closing-actions{grid-column:1/-1;display:flex;gap:35px;align-items:center}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:33px 7%;border-top:1px solid var(--line)}.site-footer .brand{margin:0}.site-footer .brand img{width:29px;height:35px}.site-footer .brand small{font-size:7px;letter-spacing:1px}.site-footer>a:last-child{font-size:10px;color:#c6c9b7}.motion-control{display:flex;align-items:center;gap:10px;color:#b8c0b3;font-size:9px;background:none;padding:12px 0}.motion-control>span:first-child{color:var(--gold);font-size:13px}
.reveal{opacity:0;transform:translateY(25px);transition:opacity .85s,transform .85s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:none}.intro-copy{animation:intro-in 1.1s both}.intro-actor{animation:actor-in 1.1s .15s both}@keyframes intro-in{from{opacity:0}to{opacity:1}}@keyframes actor-in{from{opacity:0}to{opacity:1}}.intro-finished .intro-copy,.intro-finished .intro-actor{animation:none}
@media(min-width:1800px){.intro-copy{left:10%;top:32%}.intro-actor{right:9%;height:88%}.host-name{right:11%}.section-shell{width:75%}.intro-description{font-size:15px;max-width:390px}}
@media(max-width:1100px){.masthead{gap:22px}.masthead nav{gap:22px}.intro-copy{left:6%;width:58%;top:31%}h1{font-size:62px}.intro-actor{height:77%;right:-3%}.intro-description{max-width:310px;font-size:12px}.header-sound{font-size:9px;padding:11px}.logo-caption p{font-size:11px}.workbench{gap:35px}.job-visual{min-height:470px}.heading-row{gap:35px}.heading-row>p{max-width:270px;font-size:12px}.first-day-inner{column-gap:60px}.connection-row{gap:25px;grid-template-columns:.8fr 1.4fr 1.4fr}.scene-number{letter-spacing:1px}.voice-picker{font-size:8px;gap:8px}}
@media(max-width:760px){.intro{height:100svh;min-height:890px}.masthead{height:105px;flex-wrap:wrap;align-content:center;gap:15px}.brand{width:100%;gap:10px}.brand img{width:27px;height:34px}.brand>span{font-size:10px}.brand small{display:inline;margin-left:10px;letter-spacing:1px;font-size:7px}.masthead nav{gap:24px}.masthead nav a{font-size:10px}.header-sound{display:none}.intro-copy{top:20%;width:70%}h1{font-size:52px;letter-spacing:-2px}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:20px}.intro-description{max-width:300px;font-size:12px}.intro-actor{height:58%;right:-7%;bottom:47px}.host-name{right:5%;bottom:125px;padding:10px 12px}.intro-dock{flex-wrap:wrap;gap:12px;bottom:22px}.voice-picker{order:3;width:100%}.scene-number{font-size:7px}.text-button{font-size:9px;gap:15px}.logo-story{height:170svh;min-height:1150px}.logo-stage{min-height:650px}.logo-monument{width:90vw}.logo-kicker{top:21%;font-size:8px;letter-spacing:2px}.logo-caption{bottom:16%;align-items:flex-start;flex-direction:column;gap:20px}.logo-caption h2{font-size:33px}.logo-caption p{font-size:11px}.scene-index{bottom:40px;font-size:7px}.scroll-cue{left:auto;right:7%;transform:none;font-size:7px;letter-spacing:1px;gap:12px}.life{padding-top:85px;padding-bottom:65px}.heading-row{display:block}.section-heading h2,.first-day h2{font-size:44px;letter-spacing:-1.2px}.heading-row>p{margin-top:25px;max-width:400px}.section-heading{margin-bottom:36px}.workbench{grid-template-columns:1fr;gap:30px}.job-visual{min-height:360px}.job-panel{padding-top:0}.job-tabs{margin-bottom:30px}.job-panel h3{font-size:32px;min-height:0}.job-panel #job-copy{min-height:0;max-width:100%;margin-bottom:22px}.job-start p{max-width:100%}.connections{padding-top:25px;padding-bottom:80px}.connections .section-heading{margin-bottom:40px}.connection-row{grid-template-columns:1fr 1.3fr;gap:20px;padding-top:28px;padding-bottom:28px;padding-right:20px}.row-number{grid-column:1/-1;margin:0;font-size:7px}.connection-row h3{font-size:27px}.connection-row p{font-size:11px;margin:0}.row-mark{top:25px}.first-day{padding:75px 0}.first-day-inner{grid-template-columns:1fr;row-gap:35px}.first-steps p{max-width:100%}.closing-actions{flex-wrap:wrap;gap:20px}.site-footer{flex-wrap:wrap;padding:28px 7%;gap:17px}.site-footer .brand{width:100%}.site-footer .brand small{display:block;margin-left:0;margin-top:4px}.site-footer .brand>span{font-size:10px}.site-footer>a:last-child{font-size:9px}}
@media(max-width:480px){.intro{height:1090px;min-height:1090px}.masthead{margin:0 25px;height:110px}.intro-copy{top:162px;left:25px;right:25px;width:auto;max-width:none}h1{font-size:45px;line-height:1.04;margin-bottom:22px}.eyebrow{font-size:7px;letter-spacing:1.3px}.intro-description{font-size:11px;max-width:290px;line-height:1.9;margin-bottom:22px}.primary{font-size:10px;min-height:47px;padding:13px 16px;gap:17px}.intro-actor{height:470px;top:510px;bottom:auto;right:calc(50% - 166px)}.host-name{left:25px;right:auto;bottom:150px;background:#071114bf}.host-name strong{font-size:9px}.host-name small{font-size:8px}.intro-dock{left:25px;right:25px;bottom:22px;padding-top:14px;row-gap:9px}.voice-picker select{max-width:170px;font-size:9px;padding:5px 20px 5px 8px}.sound-hint{font-size:7px;max-width:290px;letter-spacing:1px;margin-top:13px}.speech-controls{max-width:290px;height:47px;font-size:9px;gap:12px}.logo-story{min-height:1000px;height:165svh}.logo-stage{min-height:600px}.logo-kicker{top:22%;left:25px;font-size:7px;letter-spacing:1.7px}.logo-monument{width:91vw}.logo-caption{left:25px;right:25px;bottom:17%}.logo-caption h2{font-size:32px}.logo-caption p{font-size:11px;line-height:1.9}.scene-index{left:25px;font-size:6px;letter-spacing:1px;bottom:35px}.scroll-cue{right:25px;bottom:29px;font-size:6px;letter-spacing:.7px;gap:10px}.scroll-line{height:22px}.section-shell{width:calc(100% - 50px)}.section-heading h2,.first-day h2{font-size:37px;letter-spacing:-1px}.heading-row>p{font-size:11px;line-height:1.9;margin-top:23px}.job-visual{min-height:340px}.film-caption{font-size:32px;left:23px;bottom:25px}.film-label{left:23px;top:23px;font-size:6px;letter-spacing:1.1px}.job-tabs button{font-size:10px;padding-bottom:15px}.job-panel h3{font-size:30px}.job-panel #job-copy,.job-start p{font-size:11px}.connection-row{display:block;padding-right:24px}.row-number{display:block;margin-bottom:17px}.connection-row h3{font-size:29px;margin-bottom:18px}.connection-row h3 br{display:none}.connection-row p{max-width:100%;font-size:11px}.row-mark{font-size:18px}.first-steps li{gap:17px;padding:22px 0}.first-steps h3{font-size:13px}.first-steps p{font-size:11px}.closing-actions{gap:15px}.closing-actions .text-button{font-size:9px}.site-footer{padding:25px;column-gap:15px}.site-footer .brand small{font-size:6px}.motion-control{font-size:8px}.life{padding-top:70px}}
@media(max-width:350px){h1{font-size:39px}.intro-copy{left:21px;right:21px}.intro-description{max-width:270px}.intro-actor{top:520px;height:440px;right:calc(50% - 155px)}.intro{height:1080px;min-height:1080px}.masthead{margin:0 21px}.masthead nav{gap:18px}.intro-dock{left:21px;right:21px}.intro-dock .text-button{font-size:8px;gap:7px}.scene-number{font-size:6px;letter-spacing:.8px}.host-name{left:21px}.section-shell{width:calc(100% - 42px)}.section-heading h2,.first-day h2{font-size:33px}.logo-caption h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.logo-monument{transform:none!important;clip-path:none!important}.logo-world img{transform:none!important}.logo-caption{transform:none!important;opacity:1}.intro-copy,.intro-actor{opacity:1}}
body.motion-paused .logo-monument,body.motion-paused .logo-world img,body.motion-paused .logo-caption{transform:none!important;clip-path:none!important;opacity:1!important}
@media(min-width:761px) and (max-width:900px){.intro{min-height:1000px}.intro-copy{top:20%;width:70%}h1{font-size:54px}.intro-actor{height:59%;right:-6%;bottom:45px}.host-name{bottom:125px}}
/* Black stage: no scenery or labels across the performer. */
.intro{background:#000}.intro-world,.intro-shade,.host-name{display:none}
.intro-actor{height:85%;max-height:940px;aspect-ratio:4/5;right:1%;bottom:90px;top:auto}
.intro-actor:before{display:none}.intro-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.intro-actor .portrait-layer{object-position:center;filter:none;background:#000}
body.motion-paused .intro-actor .portrait-layer{opacity:0}
.logo-stage:before{content:'';position:absolute;z-index:2;inset:0 0 auto;height:17%;background:linear-gradient(#000,transparent);pointer-events:none}
.logo-world{opacity:var(--world-opacity,1)}
@media(min-width:761px) and (max-width:900px){.intro-actor{height:60%;right:-2%;bottom:95px}}
@media(max-width:760px){.intro-actor{height:55%;right:-3%;bottom:95px;top:auto}}
@media(max-width:480px){.intro-actor{height:520px;top:480px;bottom:auto;right:calc(50% - 208px);max-height:none}}
@media(max-width:350px){.intro-actor{height:490px;top:505px;right:calc(50% - 196px)}}
/* Keep the complete performer in the first phone viewport, above the dock. */
@media(max-width:480px){
 .intro{height:100svh;min-height:780px}
 .masthead{height:90px}
 .intro-copy{top:125px}
 .intro-copy .eyebrow{margin-bottom:15px;font-size:6.5px;letter-spacing:1px}
 h1{font-size:clamp(31px,9.1vw,38px);line-height:1.04;margin-bottom:17px;letter-spacing:-1.4px}
 .intro-description{font-size:10px;line-height:1.8;max-width:315px;margin-bottom:17px}
 .sound-hint{font-size:6.5px;letter-spacing:.7px;margin-top:11px}
 .intro-actor{left:50%;right:auto;top:45svh;height:min(43svh,400px);width:min(34.4svh,320px);transform:translateX(-50%);max-height:none}
 .intro-dock{row-gap:7px;padding-top:12px}
}
@media(max-width:350px){.intro-copy{top:121px}.intro-description{font-size:9.5px}.intro-copy .eyebrow{font-size:6px}.speech-controls{height:44px}.sound-hint{font-size:6px}}
@media(max-width:480px) and (max-height:740px){.intro-actor{top:390px;height:min(280px,36svh);width:min(224px,28.8svh)}}
/* Wider source canvas keeps the complete arm gesture, not just the torso. */
.intro-actor{aspect-ratio:10/11;right:0;width:auto}
.intro-actor .portrait-layer,.intro-poster{object-fit:contain;clip-path:none;mask:none;border-radius:0}
@media(max-width:480px){.intro-actor{left:50%;right:auto;width:min(39.0909svh,363.636px)}}
@media(max-width:480px) and (max-height:740px){.intro-actor{width:min(254.545px,32.7273svh)}}
/* Doradito — cinematic incoming call */
.intro{height:100svh;min-height:740px;background:#000;overflow:hidden;isolation:isolate}
.call-brand{position:absolute;top:36px;left:4vw;width:125px;z-index:10}.call-brand img{width:100%;height:auto}
.call-invitation{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;transition:opacity .7s,transform .9s}.call-invitation h1{font-size:clamp(48px,6vw,88px);font-weight:450;line-height:1.04;letter-spacing:-.065em;margin:25px 0 38px}.call-invitation h1 em{font-style:normal;color:#d8ba7d}.call-hint{font-size:9px;letter-spacing:.17em;color:#777;margin-top:22px}.call-invitation .eyebrow{font-size:9px;letter-spacing:.24em;color:#a6a39c}
.intro[data-call] .call-invitation{opacity:0;transform:translateY(-25px);pointer-events:none;visibility:hidden}
.incoming-call{position:absolute;top:15%;right:5vw;display:flex;align-items:center;gap:16px;width:min(430px,90vw);padding:18px 20px;border:1px solid #ffffff24;border-radius:18px;background:#17191bd9;box-shadow:0 24px 100px #0008;opacity:0;transform:translateY(-40px);transition:opacity .5s,transform .7s cubic-bezier(.16,1,.3,1);z-index:8;visibility:hidden}.incoming-call>img{width:60px;height:60px;object-fit:cover;border-radius:16px;background:#000}.incoming-call div{flex:1}.incoming-call span{font-size:8px;color:#a2a4a8;letter-spacing:.12em;display:block}.incoming-call strong{font-size:19px;font-weight:500;display:block;margin:5px 0}.incoming-call small{font-size:10px;color:#a2a4a8}.incoming-call button{border:0;border-radius:50%;height:43px;width:43px;background:#4acb86;color:#052613;font-size:26px;cursor:pointer}.intro[data-call=ringing] .incoming-call{opacity:1;transform:translateY(0);visibility:visible}.intro[data-call=ringing] .incoming-call>img{animation:call-pulse 1.7s infinite}
.phone-stage{position:absolute;left:50%;top:50%;width:332px;height:674px;transform:translate(-50%,100vh) rotate(8deg) scale(.85);opacity:0;transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .7s;perspective:1400px;z-index:5;visibility:hidden}.intro[data-call=opening] .phone-stage,.intro[data-call=active] .phone-stage,.intro[data-call=ended] .phone-stage{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(1);visibility:visible}.intro.call-closing .phone-stage{transform:translate(-50%,100vh) rotate(-6deg) scale(.8);opacity:0}
.phone-device{width:100%;height:100%;border:2px solid #646263;border-radius:53px;background:linear-gradient(120deg,#3a3835,#111 25%,#272624 65%,#777);padding:8px;box-shadow:inset 0 0 0 2px #101010,0 0 0 1px #202020,18px 25px 70px #000;position:relative}.phone-device:before{content:'';position:absolute;left:-5px;top:145px;width:3px;height:65px;background:#686562;border-radius:3px}.phone-device:after{content:'';position:absolute;right:-5px;top:170px;width:3px;height:80px;background:#686562;border-radius:3px}
.phone-screen{width:100%;height:100%;border-radius:43px;overflow:hidden;background:#050606;position:relative;color:#f2f0e9;text-align:center;display:flex;align-items:center;flex-direction:column}.phone-status{width:100%;display:flex;justify-content:space-between;padding:20px 23px 0;font-size:10px;font-weight:600}.phone-island{position:absolute;top:12px;left:50%;transform:translateX(-50%);height:23px;width:91px;background:#000;border-radius:20px}.call-contact{margin-top:37px}.call-encrypted{font-size:7px;letter-spacing:.19em;color:#87877e}.call-contact h2{font-size:32px;font-weight:400;letter-spacing:-.035em;margin:12px 0 5px}.call-contact p{font-size:10px;color:#9c9b93;margin:0;min-height:15px}
.face-window{position:relative;flex:0 0 268px;width:268px;margin:10px 0 0;overflow:hidden;background:#000;border-radius:50%}.face-window video,.face-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.face-poster{z-index:0}.face-window video{z-index:1}.motion-paused .face-window video{opacity:0}
.call-caption{font-size:10px;line-height:1.5;color:#b7b3a9;padding:3px 24px;display:flex;align-items:center;gap:8px;min-height:37px}.live-dot{height:4px;width:4px;flex:none;border-radius:100%;background:#d6b477;box-shadow:0 0 10px #d6b47760}.phone-screen .speech-controls{margin:8px 0 0;gap:10px;justify-content:center;min-height:28px}.phone-screen .speech-controls button{width:25px;height:25px;font-size:10px}.phone-screen .speech-controls span{font-size:8px;color:#85857c}.phone-screen progress{width:55px;height:2px}.hangup{border:0;background:#e64b4b;color:#fff;width:55px;height:55px;border-radius:50%;font-size:30px;transform:rotate(135deg);margin-top:15px;cursor:pointer;transition:background .2s}.hangup:hover{background:#ff6262}.hangup-label{font-size:8px;color:#99958d;margin-top:8px}.home-indicator{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);width:104px;height:4px;border-radius:4px;background:#d0cfc7}.intro[data-call=ended] .face-window{opacity:.25;transition:opacity .6s}.intro[data-call=ended] .live-dot{background:#777;box-shadow:none}
.call-side-note{position:absolute;left:10vw;top:48%;opacity:0;transform:translateY(15px);transition:opacity 1s,transform 1s}.call-side-note>span{font-size:8px;letter-spacing:.2em;color:#807566}.call-side-note p{font-size:20px;line-height:1.5;color:#b8b1a3;font-weight:300;margin-top:20px}.intro[data-call=active] .call-side-note{opacity:1;transform:translateY(0)}.intro.call-closing .call-side-note{opacity:0}.intro .intro-dock{bottom:25px;z-index:10}.intro .scene-number{font-size:8px;color:#67645e}.intro .voice-picker{font-size:9px}.intro .text-button{font-size:10px}
@keyframes call-pulse{50%{box-shadow:0 0 0 5px #d6b47720}}
@media(max-width:1050px){.call-side-note{display:none}}
@media(max-width:600px){.intro{height:100svh;min-height:720px}.call-brand{top:22px;left:23px;width:95px}.phone-stage{width:302px;height:614px;top:49%}.phone-device{border-radius:46px}.phone-screen{border-radius:36px}.call-contact{margin-top:27px}.call-contact h2{font-size:28px}.face-window{width:242px;flex-basis:242px;margin-top:5px}.phone-screen .speech-controls{margin-top:3px}.hangup{width:49px;height:49px;margin-top:10px}.intro .intro-dock{bottom:17px;padding:0 20px;flex-wrap:wrap;gap:12px}.intro .scene-number{display:none}.incoming-call{top:100px;left:5vw;right:auto;padding:14px}.call-invitation h1{font-size:51px}.call-invitation .eyebrow{font-size:8px}.call-hint{font-size:8px}}
@media(max-height:760px){.phone-stage{transform-origin:center}.intro[data-call=opening] .phone-stage,.intro[data-call=active] .phone-stage,.intro[data-call=ended] .phone-stage{transform:translate(-50%,-50%) scale(.84)}.intro{min-height:630px}}
@media(prefers-reduced-motion:reduce){.phone-stage,.incoming-call,.call-invitation{transition:none}.incoming-call>img{animation:none!important}}
.face-window video,.face-poster{clip-path:ellipse(34% 41% at 50% 42%)}
.face-window video,.face-poster{clip-path:polygon(12% 0,88% 0,88% 60%,75% 75%,60% 83%,40% 83%,25% 75%,12% 60%)}
/* Puntos importantes: accesos rápidos, caminos, cómo entrar y estado en directo */
.paths{padding-top:40px;padding-bottom:130px}.path-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.path-grid li{border-top:1px solid var(--line);padding-top:26px}.path-grid span{font-size:10px;letter-spacing:1px;color:#c5a56f}.path-grid h3{font:400 clamp(24px,2.2vw,31px)/1.15 Georgia,serif;letter-spacing:-.6px;margin:20px 0 16px}.path-grid p{font-size:12px;line-height:1.9;color:var(--muted);margin:0}.path-grid .path-tags{margin-top:16px;font-size:8px;line-height:1.9;letter-spacing:1.6px;text-transform:uppercase;color:#d5bd91}.system-list{list-style:none;margin:48px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.system-list li{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:#d8caab;border:1px solid var(--line);padding:10px 14px}
.join{display:grid;grid-template-columns:1.25fr 1fr;gap:80px;align-items:start;padding-top:120px;padding-bottom:130px}.join h2{font:400 clamp(38px,4.6vw,67px)/1.07 Georgia,serif;letter-spacing:-1.8px;margin-bottom:25px}.join-lead{font-size:13px;line-height:1.9;color:var(--muted);max-width:460px;margin-bottom:40px}.join-steps{list-style:none;margin:0 0 40px;padding:0}.join-steps li{display:flex;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.join-steps li:last-child{border-bottom:1px solid var(--line)}.join-steps li>span{font-size:10px;letter-spacing:1px;color:#c5a56f;margin-top:3px}.join-steps h3{font-size:14px;font-weight:500;margin:0 0 10px}.join-steps p{font-size:12px;line-height:1.9;color:#afbeb4;margin:0 0 12px;max-width:430px}.join-steps a{font-size:10px;letter-spacing:1.2px;color:var(--gold)}.join-steps a:hover,.status-help:hover,.footer-links a:hover,.footer-top:hover{color:var(--pale)}.join-actions{display:flex;flex-wrap:wrap;gap:35px;align-items:center}
.server-status{position:sticky;top:32px;padding:40px;border:1px solid var(--line);background:linear-gradient(160deg,#d9b66f17,#0b1719 55%)}.status-live{display:inline-flex;align-items:center;gap:10px;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:#b7c0b8;margin:0 0 26px}.status-live:before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor}.status-live[data-state=on]{color:#7ee2a8}.status-live[data-state=on]:before{box-shadow:0 0 12px currentColor;animation:status-pulse 2s infinite}.status-live[data-state=off]{color:#ef6b5f}.server-status h3{font:400 clamp(30px,2.8vw,42px)/1.1 Georgia,serif;letter-spacing:-1px;margin:0 0 30px}.status-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;margin:0;border-top:1px solid var(--line)}.status-grid div{padding:18px 0;border-bottom:1px solid var(--line);min-width:0}.status-grid dt{font-size:8px;letter-spacing:1.8px;text-transform:uppercase;color:#d5bd91}.status-grid dd{margin:9px 0 0;font:400 26px/1.2 Georgia,serif;font-variant-numeric:tabular-nums;overflow-wrap:break-word}.status-note{font-size:11px;line-height:1.8;color:var(--muted);margin:22px 0 18px}.status-help{font-size:10px;letter-spacing:1.2px;color:var(--gold)}
@keyframes status-pulse{50%{opacity:.45}}
@media(max-width:1100px){.path-grid{grid-template-columns:1fr 1fr;row-gap:30px}.join{gap:50px}}
@media(max-width:900px){.join{grid-template-columns:1fr}.server-status{position:static}}
@media(max-width:760px){.paths{padding-top:20px;padding-bottom:80px}.join h2{font-size:44px;letter-spacing:-1.2px}.join{padding-top:80px;padding-bottom:85px}}
@media(max-width:480px){.path-grid{grid-template-columns:1fr;row-gap:26px}.path-grid h3{font-size:28px}.path-grid p,.join-steps p{font-size:11px}.system-list{margin-top:36px}.system-list li{font-size:8px;letter-spacing:1.2px;padding:9px 11px}.join h2{font-size:37px;letter-spacing:-1px}.join-lead{font-size:11px}.join-steps li{gap:17px}.join-steps h3{font-size:13px}.server-status{padding:28px 24px}.status-grid dd{font-size:21px}.join-actions{gap:20px}}
@media(max-width:350px){.join h2{font-size:33px}}
/* Legibilidad (02/11): el diseño original usaba rótulos de 6-9 px y párrafos de 11-13 px, que en el
   móvil no se leen. Mismo aspecto con letra legible: rótulos 10-12 px, texto 14-17 px. Va al final y con
   los mismos selectores para mandar sobre los @media de arriba. La maqueta del teléfono se queda casi
   igual: es un teléfono de 332 px y su letra va a su escala. */
:root{--txt:clamp(14px,calc(13px + .2vw),16px);--rotulo:11px;--ok:#7ee2a8}
@media(max-width:480px){:root{--rotulo:10px}}
.eyebrow,.call-invitation .eyebrow,.intro-copy .eyebrow,.logo-kicker,.row-number,.scene-index,.scene-number,.intro .scene-number,.scroll-cue,.film-label,.job-start>span,.job-count,.call-hint,.call-side-note>span,.incoming-call span,.status-grid dt,.status-live,.path-grid .path-tags,.path-grid span,.system-list li,.first-steps li>span,.join-steps li>span{font-size:var(--rotulo)}
.eyebrow,.call-invitation .eyebrow,.intro-copy .eyebrow{letter-spacing:.22em}
.intro-description,.logo-caption p,.heading-row>p,.job-panel #job-copy,.job-start>p,.job-start p,.connection-row p,.first-steps p,.path-grid p,.join-lead,.join-steps p{font-size:var(--txt);line-height:1.75}
.heading-row>p{max-width:400px}.connection-row p{max-width:420px}.job-start>p{max-width:420px}.join-lead{max-width:500px}.join-steps p{max-width:470px}
.first-steps h3,.join-steps h3{font-size:17px}
.primary,.intro-start>span:first-child{font-size:13px}
.text-button,.intro .text-button,.closing-actions .text-button,.intro-dock .text-button{font-size:12px}
.job-tabs button{font-size:14px}
.join-steps a,.status-help{font-size:12px}
.status-note{font-size:13px}
.motion-control{font-size:11px}
.incoming-call small,.call-caption{font-size:11px}.call-encrypted{font-size:8px}.hangup-label,.phone-screen .speech-controls span{font-size:9px}
@media(max-width:480px){.job-tabs button{font-size:13px}.primary{font-size:13px}.system-list li{letter-spacing:1.4px}.status-grid dd{font-size:22px}}
@media(max-width:360px){.scene-index{display:none}}

/* UX (02/11): solo parece pulsable lo que se pulsa. Las filas de «El resto de tu vida» llevaban una
   flecha ↗ y no llevaban a ningún sitio: la flecha se quita y su hueco con ella. */
.connection-row{padding-right:0}

/* Pantallas grandes (1920, 2560 de los monitores 1440p): la letra fija se quedaba pequeña */
@media(min-width:1800px){
 :root{--txt:17px;--rotulo:12px}
 .call-invitation h1{font-size:clamp(88px,5vw,128px)}
 .section-heading h2,.first-day h2,.join h2{font-size:clamp(67px,3.7vw,96px)}
 .connection-row h3,.path-grid h3{font-size:clamp(36px,2vw,48px)}.job-panel h3{font-size:clamp(36px,2vw,46px)}
 .logo-caption h2{font-size:clamp(48px,2.6vw,64px)}.film-caption{font-size:clamp(43px,2.4vw,60px)}
 .server-status h3{font-size:clamp(42px,2.2vw,54px)}.status-grid dd{font-size:32px}
 .first-steps h3,.join-steps h3{font-size:19px}.primary{font-size:14px}.text-button{font-size:13px}.job-tabs button{font-size:15px}
 .section-shell{width:min(1720px,76%)}.job-visual{min-height:620px}
}
@media(min-width:1800px) and (min-height:1000px){.intro[data-call=opening] .phone-stage,.intro[data-call=active] .phone-stage,.intro[data-call=ended] .phone-stage{transform:translate(-50%,-50%) scale(1.18)}}

/* Bloques del 02/11: cifras, la ciudad en imágenes, tienda y preguntas. Mismo lenguaje que el resto:
   Georgia, líneas doradas finas, esquinas rectas. */
.figures{padding-bottom:110px}
.figure-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.figure-row li{padding:38px 28px 34px;border-left:1px solid var(--line)}.figure-row li:first-child{border-left:0;padding-left:0}
.figure-row strong{display:block;font:400 clamp(48px,5.2vw,80px)/1 Georgia,serif;letter-spacing:-2px;color:var(--pale);font-variant-numeric:tabular-nums;margin-bottom:16px}
.figure-row span{display:block;font-size:var(--rotulo);letter-spacing:.2em;text-transform:uppercase;line-height:1.6;color:#c6b38c}
.city-strip{padding-top:20px;padding-bottom:130px}
.city-strip .heading-row .text-button{flex:none;margin-bottom:6px}
.strip-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px}
.strip-tile{position:relative;display:block;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--line);background:#0b1719;transition:border-color .4s}.strip-tile:first-child{aspect-ratio:auto}
.strip-tile img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.strip-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#031014c7,transparent 55%)}
.strip-tile span{position:absolute;z-index:1;left:20px;bottom:18px;font-size:var(--rotulo);letter-spacing:.18em;text-transform:uppercase;color:#ead5aa}
.strip-tile:hover{border-color:#d9b66f88}.strip-tile:hover img{transform:scale(1.05)}
.shop-teaser{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;padding-top:30px;padding-bottom:130px}
.shop-coin{position:relative;display:grid;place-items:center;aspect-ratio:1;width:100%;max-width:380px;justify-self:center}
.shop-coin:before{content:'';position:absolute;inset:8%;border-radius:50%;background:radial-gradient(circle,#d9b66f2e,transparent 65%)}
.shop-coin video{position:relative;width:78%;height:78%;object-fit:contain;mix-blend-mode:screen;-webkit-mask-image:radial-gradient(circle closest-side,#000 84%,transparent 97%);mask-image:radial-gradient(circle closest-side,#000 84%,transparent 97%)}
.shop-copy h2{font:400 clamp(38px,4.6vw,67px)/1.07 Georgia,serif;letter-spacing:-1.8px;margin-bottom:25px}
.shop-copy>p{font-size:var(--txt);line-height:1.75;color:var(--muted);max-width:480px;margin-bottom:28px}
.shop-chips{list-style:none;margin:0 0 36px;padding:0;display:flex;flex-wrap:wrap;gap:10px}.shop-chips li{font-size:var(--rotulo);letter-spacing:.16em;text-transform:uppercase;color:#d8caab;border:1px solid var(--line);padding:10px 14px}
.shop-actions{display:flex;flex-wrap:wrap;gap:35px;align-items:center}
.faq{padding-top:20px;padding-bottom:130px}
.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 0;cursor:pointer;list-style:none;font:400 clamp(22px,2vw,28px)/1.25 Georgia,serif;letter-spacing:-.4px;transition:color .3s}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';flex:none;font:300 28px/1 Inter,Arial,sans-serif;color:var(--gold);transition:transform .3s}
.faq-list details[open] summary:after{transform:rotate(45deg)}.faq-list summary:hover{color:var(--pale)}
.faq-list details p{font-size:var(--txt);line-height:1.75;color:var(--muted);max-width:720px;margin:-6px 0 30px}
.faq-list a{color:var(--pale);text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){
 .figures{padding-bottom:70px}.figure-row{grid-template-columns:1fr 1fr}.figure-row li{padding:28px 18px 26px}.figure-row li:nth-child(odd){border-left:0;padding-left:0}.figure-row li:nth-child(n+3){border-top:1px solid var(--line)}
 .city-strip{padding-bottom:85px}.city-strip .heading-row .text-button{margin-top:20px}
 /* En el móvil, las fotos se deslizan de lado hasta el borde de la pantalla */
 .strip-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:calc((100% - 100vw) / 2);padding-right:calc((100vw - 100%) / 2);scrollbar-width:none}.strip-row::-webkit-scrollbar{display:none}
 .strip-tile,.strip-tile:first-child{flex:0 0 80%;scroll-snap-align:start;aspect-ratio:4/3}
 .shop-teaser{grid-template-columns:1fr;gap:16px;padding-bottom:85px}.shop-coin{max-width:220px}.shop-copy h2{font-size:44px;letter-spacing:-1.2px}
 .faq{padding-bottom:85px}.faq-list summary{padding:22px 0;font-size:21px}
}
@media(max-width:480px){.figure-row strong{font-size:46px}.shop-copy h2{font-size:37px;letter-spacing:-1px}.shop-actions{gap:20px}.faq-list summary{font-size:19px}}
@media(min-width:1800px){.figure-row strong{font-size:clamp(80px,4.4vw,104px)}.shop-copy h2{font-size:clamp(67px,3.7vw,96px)}.faq-list summary{font-size:32px}.shop-coin{max-width:460px}}
/* Contraste: los grises más flojos de la llamada apenas se veían sobre el negro */
.intro .scene-number{color:#8d897f}.call-hint{color:#8f8a80}.call-side-note>span{color:#a39581}.call-encrypted{color:#9a9a90}

/* UX (02/11): conectar por F8, el estado en la llamada y zonas de toque de al menos 40 px en pantallas táctiles */
.connect-box{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin-top:30px;padding:16px 18px;border:1px solid var(--line);background:#050d0f}
.connect-label{width:100%;font-size:var(--rotulo);letter-spacing:.18em;text-transform:uppercase;color:#c6b38c}
.connect-box code{flex:1;min-width:0;font:400 15px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#eeeade;overflow-wrap:break-word}
.connect-copy{min-height:40px;padding:0 16px;border:1px solid #d9b66f88;background:transparent;color:var(--pale);font-size:11px;letter-spacing:.14em;text-transform:uppercase;transition:background .2s}.connect-copy:hover{background:#d9b66f1f}.connect-copy.hecho{background:var(--gold);color:#13221d;border-color:var(--gold)}
@media(pointer:coarse){.join-steps a,.status-help,.text-button{display:inline-flex;align-items:center;min-height:40px}}
@media(max-width:480px){.connect-box code{flex-basis:100%}}
/* Cabecera común (02/11): en el móvil el teléfono de la llamada baja un poco para no quedar debajo */
@media(max-width:600px){.phone-stage{top:calc(50% + 24px)}}
