@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#090710;--panel:#11101a;--ink:#fff8f3;--muted:#b9b1c5;--pink:#ff2d91;--yellow:#ffe65b;--cyan:#58e8ff;--line:rgba(255,255,255,.18);--mono:'DM Mono',monospace;--display:'Archivo Black',Impact,sans-serif;--body:'Space Grotesk',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);overflow-x:hidden}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}.grain{position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.08;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' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 4.2%;border-bottom:1px solid var(--line);background:rgba(9,7,16,.92);position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.wordmark{display:flex;align-items:center;gap:9px;font:500 12px var(--mono);letter-spacing:.04em;white-space:nowrap}.wordmark-dot{width:10px;height:10px;border-radius:50%;background:var(--pink);box-shadow:0 0 14px var(--pink)}.main-nav{display:flex;gap:clamp(12px,2.2vw,30px);align-items:center}.nav-link{font:10px var(--mono);color:#bdb5c6;letter-spacing:.04em;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--yellow)}.sound-toggle,.menu-toggle{background:transparent;border:1px solid var(--line);padding:9px 11px;font:10px var(--mono);display:flex;align-items:center;gap:8px}.sound-bars{color:var(--pink);letter-spacing:-3px}.menu-toggle{display:none}.section-shell{width:min(1320px,92%);margin:0 auto}.hero{position:relative;min-height:690px;padding:90px 5% 45px;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 50% 48%,rgba(105,36,132,.24),transparent 49%),linear-gradient(130deg,rgba(255,45,145,.06),transparent 40%,rgba(88,232,255,.06))}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,transparent,black 20%,black 85%,transparent);z-index:-2}.hero-copy{position:relative;text-align:center;max-width:780px;z-index:2}.eyebrow{font:10px var(--mono);letter-spacing:.14em;color:var(--cyan);margin:0 0 16px}.live-dot{display:inline-block;width:7px;height:7px;background:#ff4c64;border-radius:50%;box-shadow:0 0 12px #ff4c64;margin-right:8px}.hero h1{margin:0;line-height:.82;display:flex;flex-direction:column;align-items:center;transform:rotate(-2deg)}.title-small{font:clamp(16px,2vw,26px) var(--display);letter-spacing:.12em;color:var(--yellow);text-shadow:3px 3px 0 #6e2a6c}.title-big{font:clamp(110px,19vw,245px)/.92 var(--display);letter-spacing:-.09em;color:var(--pink);-webkit-text-stroke:2px #ffd6ed;text-shadow:5px 5px 0 #9d1b74,9px 10px 0 #080610,0 0 38px rgba(255,45,145,.3)}.title-s{font-size:.58em;vertical-align:top;letter-spacing:-.1em}.hero-tagline{font-size:clamp(18px,2.5vw,27px);font-weight:700;margin:22px 0 10px}.hero-tagline em{color:var(--yellow);font-style:normal}.hero-description{max-width:490px;margin:0 auto;color:#c9c1d0;font-size:14px;line-height:1.7}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:27px}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 18px;font:11px var(--mono);letter-spacing:.025em;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-yellow{background:var(--yellow);color:#151019;box-shadow:4px 4px 0 var(--pink)}.button-yellow:hover{box-shadow:6px 6px 0 var(--pink)}.button-ghost{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.4)}.button-ghost:hover{background:rgba(255,255,255,.12)}.hero-sticker{position:absolute;z-index:3;background:var(--yellow);color:#17101a;padding:11px 14px;font:10px var(--mono);line-height:1.5;box-shadow:4px 4px 0 var(--pink);transform:rotate(-6deg)}.hero-sticker b{font-size:12px}.sticker-left{top:72px;left:2%;}.sticker-right{right:2%;bottom:82px;transform:rotate(5deg)}.hero-collage{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.9}.orbit{position:absolute;border:1px solid rgba(255,45,145,.55);border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%) rotate(-15deg)}.orbit-one{width:min(76vw,900px);height:350px}.orbit-two{width:min(67vw,790px);height:430px;border-color:rgba(88,232,255,.35);transform:translate(-50%,-50%) rotate(35deg)}.spark{position:absolute;font-size:48px;color:var(--yellow);text-shadow:0 0 15px currentColor}.spark-one{top:24%;left:18%;transform:rotate(18deg)}.spark-two{top:19%;right:17%;font-size:34px;color:var(--pink)}.spark-three{bottom:17%;right:21%;font-size:50px;color:var(--cyan)}.artifact{position:absolute;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 10px 20px rgba(0,0,0,.5))}.artifact-phone{width:112px;height:220px;left:13%;top:22%;border:5px solid #bcbcc9;border-radius:22px;background:linear-gradient(110deg,#5e5c6a,#dedee6 38%,#656372 80%);transform:rotate(-13deg);display:flex;flex-direction:column;padding:11px;color:#15131d;box-shadow:0 0 0 3px #20182a,0 0 25px rgba(255,45,145,.35)}.phone-speaker{width:27px;height:4px;border-radius:5px;background:#292733;margin:0 auto 10px}.phone-screen{background:#a6b5a3;border:3px solid #454653;height:66px;width:100%;font:8px var(--mono);text-align:center;padding-top:6px}.phone-screen span{font-size:19px;display:block}.phone-screen small{font-size:6px}.phone-brand{font:8px var(--display);margin:5px 0}.phone-keys{font:10px var(--mono);line-height:1.45;text-align:center}.artifact-disc{width:150px;height:150px;right:13%;top:20%;border-radius:50%;background:repeating-conic-gradient(from 0deg,#c6d0e9 0 8deg,#7387b1 10deg,#f2b3d4 14deg,#6c7da8 18deg);box-shadow:0 0 0 7px #22202c,0 0 0 10px var(--cyan);transform:rotate(13deg)}.disc-center{width:42px;height:42px;border-radius:50%;background:#1a1724;border:3px solid #b3b5d4;text-align:center;padding-top:7px;font:8px var(--mono)}.artifact-window{width:180px;height:110px;left:21%;bottom:17%;background:#d5d7e4;border:3px solid #7b8ca9;display:block;transform:rotate(7deg);color:#1d2331}.window-bar{height:19px;background:linear-gradient(90deg,#2745aa,#73b8ff);color:#fff;font:8px var(--mono);padding:3px}.window-bar span{float:right}.window-face{font-size:34px;float:right;padding:10px;color:#3d68aa}.window-lines{font:8px var(--mono);padding:12px}.artifact-camera{right:21%;bottom:20%;width:90px;height:75px;border:4px solid #a6a8ba;border-radius:12px;background:linear-gradient(140deg,#27283b,#858aa6);font-size:30px;transform:rotate(-10deg);display:flex;flex-direction:column}.artifact-camera small{font:9px var(--mono)}.artifact-player{left:6%;bottom:27%;width:100px;height:72px;border:2px solid #b5bbcf;border-radius:20px;background:linear-gradient(130deg,#314d87,#a7b7d9);color:var(--yellow);font-size:30px;display:flex;flex-direction:column;gap:4px;transform:rotate(10deg)}.artifact-player span{font:6px var(--mono);color:white}.player-line{width:55%;height:3px;background:var(--pink)}.hero-footer{position:absolute;bottom:17px;left:5%;right:5%;display:flex;justify-content:space-between;color:#92899f;font:9px var(--mono);letter-spacing:.08em}.portals-section,.then-now-section{padding:90px 0 78px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.section-heading h2{font:clamp(36px,6vw,66px)/.95 var(--display);letter-spacing:-.05em;margin:0}.section-heading h2 span{color:var(--pink)}.section-heading h2 i{font-size:.6em;color:var(--yellow);font-style:normal;vertical-align:top;margin-left:8px}.section-note{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 4px}.timeline-tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.timeline-tab{border:1px solid var(--line);background:#100e18;padding:12px 15px;font:11px var(--mono);display:flex;align-items:center;gap:9px}.timeline-tab small{color:#9b91a8;font-size:9px}.timeline-tab.selected{background:var(--yellow);color:#17101a;border-color:var(--yellow)}.timeline-tab.selected small{color:#574b27}.portal-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.portal-card{position:relative;min-height:245px;overflow:hidden;text-align:left;border:1px solid rgba(255,255,255,.25);background:#14111d;padding:15px;display:flex;flex-direction:column;align-items:flex-start;isolation:isolate;transition:transform .25s,border-color .25s,box-shadow .25s}.portal-card:before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 50% 42%,var(--portal-glow),transparent 56%)}.portal-card:after{content:"";position:absolute;inset:0;z-index:-1;opacity:.22;background-image:radial-gradient(var(--portal-color) 1px,transparent 1.5px);background-size:9px 9px;mask-image:linear-gradient(to bottom,black,transparent 85%)}.portal-card:hover{transform:translateY(-7px) rotate(-.6deg);border-color:var(--portal-color);box-shadow:0 12px 34px var(--portal-shadow)}.portal-card:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.portal-number{font:9px var(--mono);color:#e5ddeb;letter-spacing:.08em}.portal-art{width:100px;height:100px;align-self:center;display:grid;place-items:center;border:2px solid var(--portal-color);border-radius:50%;font-size:52px;color:var(--portal-color);margin:18px auto 16px;box-shadow:0 0 0 8px color-mix(in srgb,var(--portal-color) 12%,transparent),0 0 25px var(--portal-shadow);background:radial-gradient(circle,rgba(255,255,255,.09),transparent 68%);text-shadow:0 0 15px var(--portal-color);transition:transform .35s}.portal-card:hover .portal-art{transform:scale(1.08) rotate(8deg)}.portal-name{font:17px/1.05 var(--display);letter-spacing:-.03em}.portal-subtitle{font-size:10px;color:#c5bdcf;margin-top:8px}.portal-open{font:8px var(--mono);color:var(--portal-color);margin-top:auto;padding-top:17px;letter-spacing:.05em}.portal-pink{--portal-color:#ff4fa7;--portal-glow:rgba(255,45,145,.2);--portal-shadow:rgba(255,45,145,.16)}.portal-green{--portal-color:#9dff57;--portal-glow:rgba(112,255,60,.16);--portal-shadow:rgba(112,255,60,.15)}.portal-blue{--portal-color:#6d9dff;--portal-glow:rgba(69,111,255,.19);--portal-shadow:rgba(69,111,255,.17)}.portal-orange{--portal-color:#ffad58;--portal-glow:rgba(255,134,54,.18);--portal-shadow:rgba(255,134,54,.16)}.portal-purple{--portal-color:#d79aff;--portal-glow:rgba(180,90,255,.18);--portal-shadow:rgba(180,90,255,.15)}.portal-cyan{--portal-color:#62eaff;--portal-glow:rgba(48,205,255,.17);--portal-shadow:rgba(48,205,255,.15)}.portal-lime{--portal-color:#d4ff54;--portal-glow:rgba(198,255,70,.14);--portal-shadow:rgba(198,255,70,.13)}.portal-teal{--portal-color:#5fffd2;--portal-glow:rgba(62,255,196,.16);--portal-shadow:rgba(62,255,196,.14)}.portal-red{--portal-color:#ff777b;--portal-glow:rgba(255,72,72,.16);--portal-shadow:rgba(255,72,72,.15)}.portal-yellow{--portal-color:#ffe66b;--portal-glow:rgba(255,220,70,.16);--portal-shadow:rgba(255,220,70,.13)}.portal-hint{text-align:center;font:9px var(--mono);letter-spacing:.12em;color:#a39aae;margin:26px 0 0}.portal-hint span{color:var(--pink);margin:0 12px}.then-now-section{border-top:1px solid var(--line)}.arrow-pink{color:var(--pink)!important}.comparison-panel{display:grid;grid-template-columns:1fr 72px 1fr;border:1px solid var(--line);background:#100e18}.comparison-side{padding:25px;min-width:0}.comparison-label{display:flex;align-items:center;gap:12px;font:12px var(--mono);color:var(--yellow)}.comparison-label small{color:#8f879c;font-size:9px}.now-side .comparison-label{color:var(--cyan)}.comparison-visual{height:225px;margin:20px 0;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.then-visual{background:radial-gradient(circle at center,rgba(255,45,145,.25),transparent 65%),repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 9px);border:1px solid rgba(255,45,145,.25)}.mini-phone{height:160px;width:90px;border:5px solid #b8bdca;border-radius:17px;background:#2c2c3a;box-shadow:0 0 0 4px #171520;display:flex;align-items:center;flex-direction:column;padding-top:10px;font:8px var(--mono);transform:rotate(-8deg);z-index:1}.mini-phone b{display:grid;place-items:center;background:#9db59c;color:#182019;width:68px;height:65px;margin:9px 0;font-size:27px}.mini-phone small{font-size:6px}.sms-bubble{position:absolute;right:6%;top:25%;background:var(--yellow);color:#17101a;padding:10px;font-size:10px;max-width:135px;transform:rotate(4deg);box-shadow:3px 3px 0 var(--pink)}.comparison-star{position:absolute;left:15%;bottom:10%;font-size:48px;color:var(--pink)}.now-visual{background:radial-gradient(circle at center,rgba(88,232,255,.2),transparent 65%),linear-gradient(135deg,rgba(88,232,255,.05),transparent);border:1px solid rgba(88,232,255,.25)}.modern-phone{width:112px;height:185px;border:4px solid #aab7c9;border-radius:21px;background:linear-gradient(160deg,#242b43,#10111b);padding:22px 8px 8px;position:relative;box-shadow:0 0 0 4px #20202b,0 0 25px rgba(88,232,255,.2);transform:rotate(6deg)}.modern-top{position:absolute;top:8px;left:38px;width:32px;height:5px;border-radius:4px;background:#69778e}.chat-row{background:#6cebc2;color:#15221f;font-size:8px;padding:7px 5px;border-radius:9px 9px 2px 9px;margin-top:17px}.chat-row span{float:right}.chat-reply{background:#e5e9f5;color:#25263a;margin-top:7px;margin-left:14px;border-radius:9px 9px 9px 2px}.modern-icons{position:absolute;bottom:8px;left:12px;font-size:12px;color:var(--cyan)}.now-spark{position:absolute;right:14%;bottom:13%;font-size:52px;color:var(--cyan)}.comparison-side h3{font-size:16px;margin:0 0 8px}.comparison-side p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}.comparison-divider{border-left:1px solid var(--line);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--pink);font:9px var(--mono);text-align:center}.comparison-divider b{font-size:30px}.comparison-footnote{font:10px var(--mono);color:#82798f;margin:13px 0 0}.memory-section{padding:20px 0 95px}.memory-card{position:relative;min-height:310px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:45px 7%;overflow:hidden;background:var(--pink);color:#180b18;isolation:isolate}.memory-card:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.2;background-image:radial-gradient(#1a091a 1.5px,transparent 2px);background-size:9px 9px}.memory-stamp{position:absolute;top:20px;left:20px;border:2px solid #1b0c1b;padding:7px 10px;font:10px var(--mono);transform:rotate(-7deg)}.memory-stamp span{font-size:18px}.memory-copy{max-width:550px;padding-top:18px}.memory-copy .eyebrow{color:#3c1731}.memory-copy h2{font:clamp(37px,6vw,70px)/.95 var(--display);letter-spacing:-.06em;margin:0 0 16px}.memory-copy h2 em{color:var(--yellow);font-style:normal;text-shadow:3px 3px 0 #22101e}.memory-copy>p:not(.eyebrow){max-width:430px;font-size:13px;line-height:1.7}.memory-card .button{margin-top:10px}.memory-doodle{width:240px;height:220px;position:relative;display:grid;place-items:center;flex-shrink:0}.doodle-ring{position:absolute;width:185px;height:185px;border:3px solid #1c0e1b;border-radius:50%;box-shadow:0 0 0 11px rgba(255,230,91,.8),0 0 0 15px #1c0e1b;transform:rotate(-12deg)}.memory-doodle>span{position:absolute;top:1px;right:4px;font-size:45px;color:var(--yellow);text-shadow:2px 2px #1c0e1b}.memory-doodle>b{font:22px/.95 var(--display);text-align:center;transform:rotate(-8deg)}.memory-doodle small{position:absolute;bottom:5px;font:8px var(--mono);letter-spacing:.08em}.site-footer{min-height:85px;padding:22px 4%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;color:#8e859c}.site-footer p{font-size:11px}.site-footer>span{font:9px var(--mono);letter-spacing:.06em}.modal-backdrop{position:fixed;inset:0;z-index:60;background:rgba(3,2,8,.82);backdrop-filter:blur(12px);display:none;align-items:center;justify-content:center;padding:20px}.modal-backdrop.open{display:flex;animation:fade-in .2s ease}.portal-modal,.memory-modal{width:min(680px,100%);max-height:min(90vh,900px);overflow:auto;position:relative;padding:clamp(24px,5vw,48px);background:#11101a;border:1px solid rgba(255,255,255,.3);box-shadow:8px 8px 0 var(--pink);animation:modal-in .3s ease}.modal-close{position:absolute;right:14px;top:12px;border:1px solid var(--line);background:transparent;font-size:25px;width:38px;height:38px}.modal-topline{display:flex;justify-content:space-between;gap:15px;font:9px var(--mono);color:#a89eb5}.modal-portal-art{width:125px;height:125px;border:2px solid var(--portal-color,var(--pink));border-radius:50%;display:grid;place-items:center;font-size:65px;color:var(--portal-color,var(--pink));margin:35px auto 25px;box-shadow:0 0 0 10px color-mix(in srgb,var(--portal-color,var(--pink)) 12%,transparent),0 0 30px var(--portal-shadow,rgba(255,45,145,.15))}.portal-modal .eyebrow{text-align:center}.portal-modal h2,.memory-modal h2{text-align:center;font:clamp(29px,6vw,48px)/1 var(--display);margin:0 0 13px}.portal-modal>p:not(.eyebrow){text-align:center;color:var(--muted);font-size:13px}.modal-placeholder{display:flex;gap:16px;align-items:flex-start;background:#191622;border:1px dashed #51465e;padding:17px;margin:25px 0}.modal-placeholder>span{color:var(--yellow);font-size:25px}.modal-placeholder b{font:10px var(--mono);color:var(--cyan)}.modal-placeholder p{font-size:12px;line-height:1.6;color:#bdb4c9;margin:8px 0 0}.modal-bottom{display:flex;justify-content:space-between;gap:12px}.memory-modal .eyebrow{text-align:center}.memory-modal h2{margin-bottom:25px}.memory-modal h2 em{color:var(--pink);font-style:normal}.memory-modal label{display:block;font:11px var(--mono);margin:18px 0 8px}.memory-modal select,.memory-modal textarea{width:100%;background:#080710;color:var(--ink);border:1px solid #51465e;padding:12px;font:12px var(--body);border-radius:0}.memory-modal textarea{resize:vertical;line-height:1.6}.form-note{font-size:10px;color:#9d93a9;line-height:1.5}.memory-confirmation{font-size:12px;color:var(--yellow);min-height:16px}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes modal-in{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes portal-pulse{0%,100%{box-shadow:0 0 0 8px color-mix(in srgb,var(--portal-color) 12%,transparent),0 0 25px var(--portal-shadow)}50%{box-shadow:0 0 0 13px color-mix(in srgb,var(--portal-color) 12%,transparent),0 0 35px var(--portal-shadow)}}@media(min-width:1200px){.portal-card{min-height:265px}.portal-art{width:112px;height:112px}}@media(max-width:900px){.topbar{padding:0 3%;}.main-nav{gap:12px}.nav-link{font-size:9px}.sound-label{display:none}.hero{min-height:650px}.artifact-phone{left:7%;transform:scale(.85) rotate(-13deg)}.artifact-disc{right:7%;transform:scale(.85) rotate(13deg)}.artifact-window{left:13%;bottom:13%}.artifact-camera{right:13%;bottom:14%}.artifact-player{left:2%;bottom:25%}.portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portal-card{min-height:235px}.portal-art{width:95px;height:95px}.comparison-side{padding:18px}.comparison-visual{height:200px}.memory-doodle{width:190px;transform:scale(.85)}}@media(max-width:640px){.topbar{height:62px}.main-nav{display:none;position:absolute;top:61px;left:0;right:0;padding:18px 5%;background:#100e18;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.nav-link{padding:13px 0;border-bottom:1px solid var(--line);font-size:11px}.menu-toggle{display:block}.sound-toggle{margin-left:auto;margin-right:8px}.hero{width:100%;min-height:640px;padding:105px 5% 68px}.hero-copy{width:100%}.hero-description{font-size:12px;max-width:350px}.title-big{font-size:clamp(100px,27vw,160px)}.title-small{font-size:14px}.hero-tagline{font-size:20px}.hero-sticker{font-size:8px;padding:8px}.sticker-left{top:24px;left:4%}.sticker-right{right:3%;bottom:48px}.artifact-phone{width:75px;height:150px;top:17%;left:4%;padding:7px;border-width:4px;opacity:.65}.phone-screen{height:43px;font-size:5px}.phone-screen span{font-size:12px}.phone-screen small,.phone-brand{font-size:5px}.phone-keys{font-size:7px}.artifact-disc{width:90px;height:90px;right:5%;top:17%;box-shadow:0 0 0 4px #22202c,0 0 0 6px var(--cyan);opacity:.7}.disc-center{width:28px;height:28px;font-size:6px;padding-top:5px}.artifact-window{width:125px;height:80px;left:2%;bottom:13%;opacity:.7}.window-bar{font-size:6px}.window-lines{font-size:6px;padding:8px}.window-face{font-size:22px}.artifact-camera{width:65px;height:55px;right:5%;bottom:16%;font-size:22px;opacity:.7}.artifact-player{width:72px;height:53px;left:2%;bottom:28%;font-size:22px;opacity:.6}.hero-footer{font-size:7px;left:3%;right:3%}.hero-footer span:nth-child(2){display:none}.section-shell{width:90%}.portals-section,.then-now-section{padding:62px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.section-heading h2{font-size:44px}.section-note{font-size:11px}.timeline-tab{padding:10px;font-size:9px;gap:5px}.timeline-tab small{font-size:8px}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.portal-card{min-height:225px;padding:12px}.portal-art{width:82px;height:82px;font-size:42px;margin:20px auto 15px}.portal-name{font-size:14px}.portal-subtitle{font-size:9px}.portal-open{font-size:7px}.comparison-panel{grid-template-columns:1fr}.comparison-side{padding:20px}.comparison-visual{height:190px}.comparison-divider{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:row;padding:10px}.comparison-divider b{font-size:24px}.comparison-divider span br{display:none}.memory-section{padding-bottom:60px}.memory-card{padding:65px 23px 28px;min-height:0;display:block}.memory-copy h2{font-size:45px}.memory-copy>p:not(.eyebrow){font-size:12px}.memory-doodle{position:absolute;right:-30px;bottom:-42px;opacity:.18;transform:scale(.8)}.site-footer{flex-wrap:wrap;padding:20px 5%;}.site-footer p{order:3;width:100%;margin:0}.site-footer>span{font-size:7px}.modal-backdrop{padding:10px}.portal-modal,.memory-modal{padding:28px 20px}.modal-topline{font-size:7px}.modal-bottom .button{font-size:9px;padding:12px 10px;gap:8px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* AUTOMATED TIME-PORTAL INTRO */
body.intro-active{overflow:hidden}
.time-intro{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(18px,4vw,42px);background:radial-gradient(ellipse at 50% 45%,#24113d 0%,#0a0712 55%,#050409 100%);color:#fff;overflow:hidden;transition:opacity .8s ease,visibility .8s ease}
.time-intro:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:38px 38px;mask-image:radial-gradient(ellipse at center,#000,transparent 78%)}
.time-intro:after{content:"";position:absolute;width:min(78vw,680px);aspect-ratio:1;border:1px solid rgba(255,45,145,.2);border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%);box-shadow:0 0 0 28px rgba(255,45,145,.025),0 0 0 75px rgba(88,232,255,.025),0 0 90px rgba(255,45,145,.08);pointer-events:none}
.intro-noise{position:absolute;inset:-50%;opacity:.08;pointer-events:none;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' filter='url(%23n)'/%3E%3C/svg%3E");animation:noise-drift .25s steps(2) infinite}
.intro-topline,.intro-bottomline{z-index:2;position:relative;display:flex;justify-content:space-between;gap:18px;align-items:center;font:10px var(--mono);letter-spacing:.13em;color:#a99dbb}.intro-bottomline{color:#81768e}.intro-bottomline button{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.04);padding:10px 13px;color:#fff;font:10px var(--mono);letter-spacing:.06em}
.intro-stage{position:relative;z-index:1;flex:1;min-height:0;display:grid;place-items:center;perspective:1200px}
.intro-phone{position:absolute;width:clamp(220px,28vw,285px);height:clamp(420px,66vh,530px);border-radius:38px;transition:opacity .65s ease,transform .8s cubic-bezier(.2,.8,.2,1),filter .4s;overflow:hidden}
.modern-device{background:linear-gradient(145deg,#30313c,#11121b 60%,#30303b);border:3px solid #73717f;padding:20px 15px 18px;box-shadow:0 0 0 5px #17141f,0 30px 100px #000,0 0 40px rgba(88,232,255,.12);transform:translateY(20px) rotateY(-9deg) rotateZ(-2deg);animation:modern-arrive .8s ease both}
.device-island{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:82px;height:18px;background:#05050a;border-radius:20px;z-index:2}.device-status{display:flex;justify-content:space-between;font:10px var(--body);padding:1px 5px 18px;color:#f8f6ff}.chat-header{height:56px;display:flex;align-items:center;gap:9px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:10px}.chat-back{font-size:28px;color:#a6b7ff}.mom-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#ffc1d8,#a47aff);color:#321b48;font-weight:700}.chat-person{display:flex;flex-direction:column;gap:2px;flex:1}.chat-person b{font-size:13px}.chat-person small{font-size:9px;color:#9f9bad}.chat-dots{letter-spacing:2px;color:#b5b2c5}.chat-date{text-align:center;color:#77778b;font:8px var(--mono);margin:20px 0}.chat-bubble{max-width:90%;padding:12px 14px;font-size:13px;line-height:1.4}.mom-message{background:#333541;border-radius:16px 16px 16px 4px;opacity:0;transform:translateY(8px);animation:message-pop .5s ease 1s forwards}.typing-reply{display:flex;gap:4px;width:max-content;background:#333541;border-radius:14px;margin:12px 0 0 auto;opacity:0}.typing-reply span{width:5px;height:5px;border-radius:50%;background:#c8c6d4;animation:typing-dot .8s infinite}.typing-reply span:nth-child(2){animation-delay:.15s}.typing-reply span:nth-child(3){animation-delay:.3s}.chat-compose{position:absolute;left:14px;right:14px;bottom:32px;height:38px;border-radius:22px;background:#292a35;color:#8d8b9e;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:10px}.chat-compose b{display:grid;place-items:center;background:#8d83ff;color:#fff;border-radius:50%;width:23px;height:23px}.device-homebar{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);height:4px;width:78px;border-radius:8px;background:#e6e4ed}
.glitch-burst{position:absolute;z-index:3;display:flex;flex-direction:column;gap:13px;text-align:center;opacity:0;color:var(--cyan);font:clamp(10px,2vw,15px) var(--mono);letter-spacing:.2em;text-shadow:3px 0 var(--pink),-3px 0 #384cff}.glitch-burst b{font-size:clamp(12px,3vw,20px);color:var(--yellow)}.glitch-burst i{font-style:normal;color:#fff}
.nokia-device{opacity:0;visibility:hidden;transform:scale(.55) rotate(9deg);width:clamp(200px,24vw,250px);height:clamp(390px,60vh,485px);border:7px solid #9b9ba4;border-radius:32px 32px 38px 38px;background:linear-gradient(100deg,#656570,#e3e3e8 17%,#a7a7b1 43%,#efeff2 62%,#666672 100%);box-shadow:inset 0 0 0 3px #34343d,0 0 0 5px #21172b,0 25px 90px #000,0 0 55px rgba(255,45,145,.42);padding:22px 17px 16px;color:#191920;display:flex;align-items:center;flex-direction:column}
.nokia-speaker{width:36px;height:5px;border-radius:6px;background:#272731;box-shadow:0 0 0 2px #777782;margin-bottom:8px}.nokia-brand{font:10px var(--display);letter-spacing:.12em;margin-bottom:20px}.nokia-screen{width:100%;height:104px;background:#b7c6a2;border:5px solid #555b55;box-shadow:inset 0 0 0 2px #89947b;padding:8px;display:flex;flex-direction:column;gap:7px;font:9px var(--mono);color:#263022}.nokia-screen small{font-size:8px}.nokia-screen b{font-size:18px;letter-spacing:2px;overflow-wrap:anywhere}.nokia-screen strong{font: bold 19px var(--display);letter-spacing:.02em}.nokia-softkeys{width:100%;display:flex;justify-content:space-between;font:8px var(--mono);margin:7px 0 12px}.nokia-nav{width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:11px}.nokia-nav b{background:linear-gradient(#555761,#24252b);color:#ddd;border:2px solid #8b8b94;border-radius:7px;padding:7px 23px;font:9px var(--mono)}.nokia-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;width:100%;flex:1}.nokia-keypad span{display:grid;place-items:center;min-height:23px;border-radius:10px;background:linear-gradient(#fafafd,#b7b7c0 70%,#8b8b95);border:1px solid #777780;box-shadow:0 2px 0 #55555f;font:7px var(--mono);color:#292932}.nokia-keypad span:first-child{display:none}
.intro-caption{position:absolute;bottom:8%;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;white-space:nowrap;color:#b9b0c9;font:10px var(--mono);letter-spacing:.06em;text-align:center}.caption-dot{width:6px;height:6px;background:var(--pink);border-radius:50%;box-shadow:0 0 12px var(--pink);animation:caption-blink 1s infinite}
.intro-welcome{position:absolute;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;opacity:0;transform:translateY(14px) scale(.95);pointer-events:none}.intro-welcome span{font:9px var(--mono);letter-spacing:.2em;color:var(--cyan)}.intro-welcome strong{font:clamp(48px,10vw,100px)/.9 var(--display);letter-spacing:-.07em;color:var(--yellow);text-shadow:4px 4px 0 var(--pink),8px 8px 0 #17101f,0 0 35px rgba(255,230,91,.3)}.intro-welcome small{font:10px var(--mono);letter-spacing:.16em;color:#c5bbd3}
.time-intro.phase-glitch .modern-device{animation:phone-glitch .9s steps(2) forwards}.time-intro.phase-glitch .glitch-burst{animation:glitch-flash 1.1s steps(2) forwards}.time-intro.phase-nokia .modern-device{opacity:0;transform:scale(.65) rotate(-18deg);filter:blur(8px)}.time-intro.phase-nokia .nokia-device{visibility:visible;animation:nokia-arrive .8s cubic-bezier(.15,.8,.2,1) forwards}.time-intro.phase-nokia .intro-caption{color:var(--yellow)}.time-intro.phase-welcome .nokia-device{transform:scale(.72) translateY(0);opacity:.18;filter:blur(3px)}.time-intro.phase-welcome .intro-caption{opacity:0}.time-intro.phase-welcome .intro-welcome{animation:welcome-pop .7s ease forwards}.time-intro.phase-exit{opacity:0;visibility:hidden;pointer-events:none}.time-intro.phase-exit .intro-stage{transform:scale(1.06);transition:transform .8s ease}
@keyframes modern-arrive{from{opacity:0;transform:translateY(45px) rotateY(-15deg) rotateZ(-5deg)}to{opacity:1;transform:translateY(20px) rotateY(-9deg) rotateZ(-2deg)}}@keyframes message-pop{to{opacity:1;transform:translateY(0)}}@keyframes typing-dot{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-4px);opacity:1}}@keyframes phone-glitch{0%{transform:translate(0,20px) rotateZ(-2deg);filter:none}15%{transform:translate(-8px,18px) skewX(8deg);filter:hue-rotate(90deg)}30%{transform:translate(8px,20px) skewX(-8deg);filter:contrast(2)}45%{transform:translate(-3px,20px);opacity:.9}60%{transform:translate(12px,20px) scaleX(.92);opacity:.5}100%{transform:translate(0,20px) scale(.7);opacity:0;filter:blur(8px)}}@keyframes glitch-flash{0%{opacity:0;transform:scale(.8)}15%,55%{opacity:1;transform:scale(1.04)}30%,70%{opacity:.3;transform:scale(.97)}100%{opacity:0;transform:scale(1.15)}}@keyframes nokia-arrive{0%{opacity:0;transform:scale(.45) rotate(12deg);filter:blur(10px)}70%{opacity:1;transform:scale(1.06) rotate(-3deg);filter:blur(0)}100%{opacity:1;transform:scale(1) rotate(0);filter:none}}@keyframes welcome-pop{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes caption-blink{50%{opacity:.25}}@keyframes noise-drift{0%{transform:translate(0,0)}100%{transform:translate(2%,-1%)}}@media(max-width:600px){.intro-topline,.intro-bottomline{font-size:8px}.intro-phone{height:clamp(385px,55vh,455px);width:220px}.modern-device{padding:20px 14px}.nokia-device{width:205px;padding:18px 15px 13px}.nokia-screen{height:90px}.nokia-keypad{gap:4px}.nokia-keypad span{min-height:21px}.intro-caption{bottom:7%;font-size:8px}.intro-welcome strong{font-size:clamp(54px,14vw,84px)}}@media(prefers-reduced-motion:reduce){.time-intro,.intro-phone,.glitch-burst,.intro-welcome{animation:none!important;transition:none!important}}

/* Intro v2: iMessage-inspired interface and a slower, creeping time rupture. */
.modern-device{background:#f5f5fa;border:5px solid #777781;color:#111116;padding:20px 15px 18px;box-shadow:0 0 0 5px #17141f,0 30px 100px #000,0 0 40px rgba(88,232,255,.12)}
.modern-device .device-island{background:#050505}
.modern-device .device-status{color:#111116;font-weight:700;padding-bottom:12px}
.imessage-header{height:58px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #d8d8df;padding-bottom:10px}
.imessage-header .chat-back{color:#1685ff;font-size:34px;line-height:1}
.imessage-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#d7d7de,#8d8e9a);color:#fff;font-size:17px;font-weight:700;box-shadow:inset 0 1px 2px #fff}
.modern-device .chat-person b{font-size:12px;color:#17171b}
.modern-device .chat-person small{font-size:9px;color:#85858d}
.video-icon{color:#1685ff;font-size:19px;margin-left:auto}
.modern-device .chat-date{font:8px var(--body);color:#8c8c94;margin:15px 0 17px;text-align:center}
.modern-device .chat-bubble{font:12px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;max-width:88%;padding:9px 12px;border-radius:18px;box-shadow:0 1px 1px rgba(0,0,0,.04)}
.modern-device .mom-message{background:#e5e5ea;color:#111;border-radius:18px 18px 18px 5px;opacity:0;transform:translateY(7px);animation:none}
.modern-device .mom-message.message-visible,.modern-device .mom-message:first-of-type{opacity:1;transform:translateY(0)}
.modern-device .second-mom-message{margin-top:9px;opacity:0;transform:translateY(7px);transition:opacity .55s ease,transform .55s ease}
.modern-device .second-mom-message.message-visible{opacity:1;transform:translateY(0)}
.modern-device .typing-reply{background:#e5e5ea;margin:11px 0 0 auto;padding:10px 12px;opacity:0;transition:opacity .35s ease}
.modern-device .typing-reply span{background:#8b8b92}
.modern-device .owner-reply{margin:10px 0 0 auto;background:#1685ff;color:#fff;border-radius:18px 18px 5px 18px;opacity:0;transform:translateY(7px);transition:opacity .55s ease,transform .55s ease}
.modern-device .owner-reply.message-visible{opacity:1;transform:translateY(0)}
.imessage-compose{position:absolute;left:12px;right:12px;bottom:29px;height:35px;display:flex;align-items:center;gap:7px;color:#96969d}
.plus-button{height:24px;width:24px;border:1px solid #c7c7ce;border-radius:50%;display:grid;place-items:center;font-size:19px;line-height:1;color:#6e6e76}
.compose-placeholder{height:29px;border:1px solid #d2d2d8;border-radius:18px;display:flex;align-items:center;padding:0 11px;flex:1;font-size:10px;background:#fff}
.audio-mic{font-size:12px;color:#8e8e96}
.modern-device .device-homebar{background:#151519;width:75px;height:4px;bottom:7px}
.intro-controls{display:flex;align-items:center;gap:8px}
.intro-controls button{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.04);padding:10px 12px;color:#fff;font:10px var(--mono);letter-spacing:.04em}
.time-intro.phase-haunt .modern-device{animation:haunt-flicker 2.2s ease-in-out infinite;box-shadow:0 0 0 5px #17141f,0 30px 100px #000,0 0 35px rgba(255,45,145,.22)}
.time-intro.phase-haunt:before{opacity:.34;background-image:linear-gradient(rgba(255,45,145,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(88,232,255,.1) 1px,transparent 1px);background-size:38px 38px;animation:haunt-lines 3.4s linear infinite}
.time-intro.phase-haunt .intro-noise{opacity:.15;animation:noise-drift .12s steps(2) infinite}
.time-intro.phase-glitch .modern-device{animation:phone-glitch 1.8s steps(2) forwards}
.time-intro.phase-glitch .glitch-burst{animation:glitch-flash 1.8s steps(2) forwards}
@keyframes haunt-flicker{0%,100%{filter:none;transform:translateY(20px) rotateY(-9deg) rotateZ(-2deg)}18%{filter:brightness(1)}22%{filter:brightness(.92) hue-rotate(8deg)}27%{filter:brightness(1.04)}58%{transform:translateY(20px) rotateY(-9deg) rotateZ(-2deg) translateX(0)}61%{transform:translateY(20px) rotateY(-9deg) rotateZ(-2deg) translateX(2px)}65%{transform:translateY(20px) rotateY(-9deg) rotateZ(-2deg) translateX(0)}}
@keyframes haunt-lines{from{transform:translateY(-12px)}to{transform:translateY(12px)}}
@media(max-width:600px){.intro-controls button{font-size:7px;padding:9px 7px}.modern-device{padding:20px 14px}.modern-device .chat-bubble{font-size:11px}}
