@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:wght@500;600;700&display=swap');
:root{--ink:#16162e;--ink2:#2d2c47;--purple:#6e58d8;--violet:#8a63eb;--mist:#eee9ff;--paper:#fcfbff;--cream:#f8f6ff;--muted:#696981;--line:#e9e5f0;--shadow:0 24px 55px rgba(44,28,102,.09);--sans:'Manrope','DM Sans',system-ui,sans-serif;--serif:'Playfair Display',Georgia,serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}a:focus-visible,button:focus-visible{outline:3px solid #8b74e4;outline-offset:3px}::selection{background:#d9ccfa;color:#211746}.container{max-width:1230px;margin:0 auto;padding:0 44px}.mono{font-family:var(--mono)}.eyebrow{color:#7660cb;font:500 11px var(--mono);letter-spacing:.2em;text-transform:uppercase}.eyebrow:before{content:'';display:inline-block;width:25px;height:2px;background:#8d79df;margin-right:12px;vertical-align:middle}.label{color:#716f88;font:500 12px var(--mono);letter-spacing:.03em}.section{padding:118px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:45px}.section-head p{max-width:420px;color:var(--muted);line-height:1.7;margin-bottom:4px;font-size:15px}.display{font-family:var(--serif);font-weight:500;letter-spacing:-.055em;line-height:1.06}.section h2,.section-title{font-family:var(--serif);font-size:clamp(37px,4.3vw,62px);letter-spacing:-.055em;line-height:1.13;font-weight:600;margin:16px 0 0}.accent{color:var(--purple)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:11px;padding:16px 21px;font-weight:750;font-size:13px;border:1px solid transparent;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-dark{background:#241f56;color:white;box-shadow:0 15px 25px #241f5627}.btn-dark:hover{background:#3d327c}.btn-outline{background:white;border-color:#d5cceb;color:#251d52}.btn-outline:hover{background:#f4f0ff}.btn-purple{background:#ece6ff;color:#4e38ac}.btn-icon{font-size:17px}.mini-label{display:inline-flex;gap:9px;align-items:center;font:500 11px var(--mono);letter-spacing:.045em;border:1px solid #ddd4f2;border-radius:30px;padding:10px 14px;background:#fff9;color:#6553a8}.mini-label i{width:7px;height:7px;background:#7763d8;box-shadow:0 0 0 4px #8b72f22b;border-radius:50%}
.site-header{position:sticky;top:0;z-index:100;background:#ffffffec;backdrop-filter:blur(17px);border-bottom:1px solid #e7e3ef}.nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:850;white-space:nowrap;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:linear-gradient(148deg,#312467,#8570f1);border-radius:10px;color:white;font:700 16px var(--serif)}.nav-links{display:flex;gap:31px;align-items:center;font-weight:750;font-size:12px;color:#52506a}.nav-links a{transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--purple)}.nav-cta{font:700 11px var(--sans);border:1px solid #ded7ef;border-radius:12px;padding:12px 15px;color:#3f3679;white-space:nowrap}.nav-toggle{display:none;color:var(--ink);border:1px solid #dcd7ea;border-radius:9px;background:white;padding:9px 12px}
.hero{position:relative;overflow:hidden;padding:75px 0 94px;background:radial-gradient(ellipse 45% 50% at 85% 55%,#e9e0ff 0%,transparent 90%),linear-gradient(155deg,#fff 25%,#f7f4ff 110%)}.hero:before{content:'';position:absolute;width:620px;height:620px;border-radius:50%;border:1px solid #d7c8ff73;top:-330px;right:-150px;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:55px;align-items:center;min-height:648px}.hero-copy{padding:36px 0 20px;position:relative;z-index:2}.hero-copy h1{font-size:clamp(56px,6.2vw,94px);margin:25px 0 28px;max-width:740px}.hero-copy h1 em{font-style:normal;color:#8067de}.hero-lede{color:#56566f;line-height:1.83;max-width:505px;font-size:17px}.hero-buttons{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.hero-side{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center}.photo-frame{position:relative;width:min(100%,465px);margin:30px auto 0;isolation:isolate}.photo-frame:before{content:'';position:absolute;inset:-18px -19px 24px 18px;background:radial-gradient(ellipse at top right,#ccbdff,#ece5ff 67%,#f5f1ff);border-radius:260px 260px 28px 28px;z-index:-1}.portrait{width:100%;height:560px;object-fit:cover;object-position:center 23%;border-radius:240px 240px 24px 24px;box-shadow:0 22px 68px #33295c27}.photo-tag{position:absolute;left:-34px;bottom:65px;background:#ffffffee;box-shadow:0 18px 40px #52418624;border:1px solid #fff;padding:14px 19px;border-radius:14px;display:flex;align-items:center;gap:12px;max-width:260px}.photo-tag strong{display:block;font-size:13px}.photo-tag small{display:block;color:#858096;font-size:11px;margin-top:3px}.photo-tag .dot{height:15px;width:15px;background:#b9a4ff;border-radius:5px;box-shadow:0 0 0 5px #cdbefe46}.orbit-text{position:absolute;right:-15px;top:33px;transform:rotate(5deg);border-radius:100px;border:1px solid #dad2ed;padding:10px 13px;background:#ffffffd9;font:10px var(--mono);color:#7f71ad}.hero-baseline{border-top:1px solid #ded9e8;padding-top:19px;margin-top:22px;display:flex;gap:30px;align-items:center;flex-wrap:wrap;color:#79758a;font-size:12px}.hero-baseline strong{color:#3b3468}
.signal-banner{background:#18182e;color:#f8f5ff;padding:30px 0}.signal-banner-inner{display:flex;justify-content:space-between;align-items:center;gap:28px}.signal-banner p{color:#c4bfd7;font-size:13px;line-height:1.6;margin:6px 0 0}.signal-banner h3{font-family:var(--serif);font-size:25px;font-weight:500;margin:0}.signal-banner a{padding:12px 18px;border:1px solid #8572c2;border-radius:10px;white-space:nowrap;color:#ecdcff;font-weight:700;font-size:12px}.lenses{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.lens{border:1px solid #e6e1f0;border-radius:20px;padding:25px;background:white;min-height:210px;box-shadow:0 8px 30px #26224d08}.lens-num{font:500 11px var(--mono);color:#9684d8}.lens-icon{width:42px;height:42px;display:grid;place-items:center;background:#f0ebff;color:#6851c7;border-radius:13px;font-size:20px;margin:21px 0 17px}.lens h3{font-size:17px;letter-spacing:-.03em;margin:0 0 8px}.lens p{font-size:13px;color:#747186;line-height:1.7;margin:0}
.journey{background:#f6f3fc}.journey-split{display:grid;grid-template-columns:280px 1fr;gap:33px}.journey-nav{display:flex;flex-direction:column;gap:10px}.journey-button{width:100%;text-align:left;background:white;border:1px solid #e5def0;border-radius:14px;padding:18px;display:grid;grid-template-columns:40px 1fr;gap:12px;color:#55536a;transition:all .2s}.journey-button:hover{border-color:#bfb1e9}.journey-button[aria-pressed="true"]{border-color:#8b75df;background:#ece5ff;box-shadow:0 8px 20px #6652bb17;color:#30286c}.journey-button span:first-child{font:500 12px var(--mono);color:#917cd1}.journey-button b{display:block;font-size:14px;margin-bottom:3px}.journey-button small{font-size:11px;line-height:1.4;color:#837f9a}.journey-stage{background:white;border:1px solid #e6dfed;border-radius:24px;padding:42px 42px 36px;min-height:390px;box-shadow:0 18px 45px #4a3c8810;display:flex;flex-direction:column;justify-content:space-between}.journey-meta{font:500 11px var(--mono);color:#8979b6;text-transform:uppercase;letter-spacing:.1em}.journey-stage h3{font:600 clamp(30px,3.4vw,44px)/1.15 var(--serif);letter-spacing:-.03em;margin:18px 0}.journey-stage p{font-size:16px;line-height:1.8;color:#615e75;max-width:650px;margin:0}.journey-stage-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #eee8f3;padding-top:23px;margin-top:28px}.journey-figure{font:500 11px var(--mono);color:#7461c1}.journey-figure strong{font:700 27px var(--sans);color:#251d58;display:block;margin-bottom:4px}.text-link{font-size:12px;font-weight:800;color:#6452bb;white-space:nowrap}
.spark{background:#fff}.spark-card{display:grid;grid-template-columns:1fr .9fr;gap:65px;align-items:center}.spark-quote{font:500 clamp(34px,4.4vw,60px)/1.21 var(--serif);letter-spacing:-.05em;margin:16px 0 25px;max-width:740px}.spark-quote em{font-style:normal;color:#6c57c3}.spark-copy{font-size:15px;color:#636078;line-height:1.9;max-width:590px}.spark-map{padding:27px;background:#faf8ff;border:1px solid #ece8f5;border-radius:23px}.spark-question{padding:21px 15px 21px 20px;border-left:3px solid #9c8aeb;margin:10px 0;background:white;border-radius:0 11px 11px 0;color:#52476f;font-size:15px;line-height:1.5}.spark-question small{display:block;margin-bottom:6px;font:500 10px var(--mono);color:#9688bc}.spark-question:nth-child(2){border-color:#7b60db}.spark-question:nth-child(3){border-color:#39a8a1}
.evidence{background:#16152b;color:white}.evidence .eyebrow{color:#b9a6ff}.evidence .section-head p{color:#bcb9ca}.evidence h2{color:white}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{border:1px solid #38334f;border-radius:17px;background:linear-gradient(135deg,#24223b,#1b1b34);padding:29px 21px;min-height:196px}.metric strong{font-family:var(--serif);font-size:clamp(36px,4.2vw,55px);letter-spacing:-.06em;line-height:1.13;display:block;color:#d9cbff}.metric span{display:block;font-size:12px;line-height:1.6;color:#f5f2ff;margin-top:14px;font-weight:800}.metric small{display:block;font-size:10px;color:#aba5bd;line-height:1.5;margin-top:7px}.evidence-note{color:#bbb7ce;margin:24px 0 0;font-size:12px}
.project{background:#fbfaff}.project-feature{display:grid;grid-template-columns:.82fr 1.18fr;gap:44px;align-items:center;background:#fff;border:1px solid #e6e3f0;border-radius:28px;padding:34px;box-shadow:var(--shadow)}.project-name{font:600 56px/1 var(--serif);letter-spacing:-.055em;margin:22px 0 16px}.project-copy p{font-size:14px;line-height:1.83;color:#605f74}.project-feature .mini-label{font-size:10px}.project-stat{display:flex;gap:10px;margin:28px 0;flex-wrap:wrap}.project-stat span{border-radius:12px;padding:12px 15px;border:1px solid #e2ddf0;background:#f8f6fe;font-size:11px;font-weight:750}.project-stat b{color:#4c38af}.project-visual{position:relative;overflow:hidden;min-height:368px;border:8px solid #211d3f;border-radius:19px;background:#211d3f;box-shadow:0 17px 40px #1d153a35}.project-visual img{width:100%;height:390px;object-fit:cover;object-position:center top;filter:saturate(.93)}.project-visual .visual-label{position:absolute;right:15px;top:15px;color:white;background:#1e183bd9;padding:9px 12px;border-radius:9px;font:500 10px var(--mono)}
.contact{background:#eee8fc;padding:95px 0 45px;position:relative;overflow:hidden}.contact:after{content:'';position:absolute;right:-230px;top:-200px;width:600px;height:600px;border:1px solid #bda9ef7a;border-radius:50%;pointer-events:none}.contact-layout{display:flex;justify-content:space-between;align-items:end;gap:40px;position:relative;z-index:2}.contact h2{font:500 clamp(39px,5vw,66px)/1.1 var(--serif);letter-spacing:-.06em;max-width:730px;margin:21px 0 20px}.contact p{color:#665f84;font-size:15px;line-height:1.8;max-width:560px}.contact-cta{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.footline{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d8ceee;margin-top:80px;padding-top:24px;font:500 10px var(--mono);color:#887c9d}
/* Dedicated about page */
.about-hero{background:radial-gradient(circle at 83% 35%,#e8dfff,transparent 46%),#fefcff;padding:88px 0 85px}.about-hero-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:70px;align-items:center}.about-h1{font:500 clamp(60px,6.5vw,94px)/1.07 var(--serif);letter-spacing:-.06em;margin:19px 0 26px}.about-h1 span{color:#745cc7}.about-copy{font-size:17px;line-height:1.85;color:#625d76;max-width:625px}.about-profile{background:white;padding:15px;border-radius:26px;box-shadow:0 25px 60px #53477821;border:1px solid #ece3f5;transform:rotate(2deg)}.about-profile img{width:100%;height:440px;object-fit:cover;object-position:center 25%;border-radius:16px}.about-profile-footer{padding:15px 8px 5px}.about-profile-footer b{font-family:var(--serif);font-size:23px}.about-profile-footer span{display:block;font-size:12px;color:#776e90;margin-top:5px}.story{background:white}.story-block{display:grid;grid-template-columns:165px 1fr;gap:35px;padding:33px 0;border-top:1px solid #eae5f0}.story-block:last-of-type{border-bottom:1px solid #eae5f0}.story-year{font:500 12px var(--mono);color:#8c78bd;padding-top:8px}.story-block h3{font:600 clamp(26px,3vw,37px)/1.18 var(--serif);letter-spacing:-.04em;margin:0 0 15px}.story-block p{color:#605e75;font-size:15px;line-height:1.88;max-width:770px;margin:0}.story-block strong{color:#4e3aa3}.turning{background:#1c1a36;color:#fff}.turning h2{max-width:970px;color:#fff;font-size:clamp(41px,4.9vw,68px)}.turning h2 span{color:#c0acff}.turning-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:start}.turning p{color:#d1cadc;line-height:1.92;font-size:16px}.turning-question{padding:25px;border-radius:16px;background:#282543;border:1px solid #514975;margin-bottom:12px;font-size:15px;line-height:1.65}.turning-question i{font:500 11px var(--mono);display:block;color:#b3a1f2;font-style:normal;margin-bottom:7px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.principle{padding:30px;background:white;border:1px solid #ebe4f2;border-radius:18px}.principle-index{font:500 11px var(--mono);color:#8a70d5}.principle h3{font:600 25px var(--serif);margin:27px 0 12px;letter-spacing:-.025em}.principle p{color:#706c80;line-height:1.8;font-size:13px;margin:0}.about-signoff{text-align:center;max-width:850px;margin:0 auto}.about-signoff h2{font:600 clamp(42px,5vw,70px)/1.15 var(--serif);letter-spacing:-.055em}.about-signoff p{color:#68627b;line-height:1.8;font-size:16px}
.reveal{opacity:1;transform:none}.reveal.visible{animation:enter-up .55s ease both}@keyframes enter-up{from{opacity:.82;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.container{padding:0 28px}.hero-grid,.spark-card,.project-feature,.about-hero-grid,.turning-layout{gap:35px}.hero-copy h1{font-size:clamp(50px,7vw,76px)}.metric-grid{grid-template-columns:repeat(2,1fr)}.journey-split{grid-template-columns:240px 1fr}.nav-links{gap:16px}}
@media(max-width:760px){.container{padding:0 21px}.nav-inner{height:70px}.brand{font-size:13px}.brand-mark{width:31px;height:31px}.nav-links{display:none;position:absolute;top:69px;left:0;right:0;background:white;flex-direction:column;padding:20px;gap:18px;align-items:start;box-shadow:0 25px 35px #2f25502b}.nav-links.open{display:flex}.nav-cta{margin-left:auto;padding:9px 12px;font-size:10px}.nav-toggle{display:inline-block}.hero{padding:34px 0 64px}.hero-grid,.spark-card,.project-feature,.about-hero-grid,.turning-layout{grid-template-columns:1fr}.hero-copy{padding-top:25px}.hero-copy h1{font-size:clamp(50px,11vw,72px);margin:22px 0}.hero-lede{font-size:15px}.hero-side{min-height:480px}.photo-frame{max-width:380px;margin:8px auto 0}.portrait{height:470px}.photo-tag{left:-6px;bottom:29px;padding:12px}.orbit-text{right:0}.section{padding:73px 0}.section-head{display:block;margin-bottom:29px}.section-head p{margin-top:14px}.lenses,.principles{grid-template-columns:1fr}.lens{min-height:unset}.journey-split{grid-template-columns:1fr;gap:18px}.journey-nav{display:grid;grid-template-columns:repeat(2,1fr)}.journey-button{grid-template-columns:1fr;gap:7px;padding:15px}.journey-stage{min-height:430px;padding:29px 24px}.journey-stage-foot{align-items:start;flex-direction:column}.spark-map{padding:14px}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric{min-height:170px;padding:23px 15px}.metric strong{font-size:clamp(35px,9vw,46px)}.project-feature{padding:18px}.project-visual{min-height:260px}.project-visual img{height:270px}.contact{padding:75px 0 32px}.contact-layout{align-items:start;flex-direction:column}.contact-cta{justify-content:start}.footline{flex-wrap:wrap;gap:12px;margin-top:55px}.signal-banner-inner{align-items:start;flex-direction:column}.about-hero{padding:50px 0 70px}.about-h1{font-size:60px}.about-profile{max-width:400px;margin:auto}.story-block{grid-template-columns:1fr;gap:12px;padding:27px 0}.story-year{padding:0}.turning p{font-size:15px}.hero-baseline{gap:10px 20px}}
@media(max-width:430px){.brand{font-size:11px}.nav-cta{display:none}.hero-buttons .btn{width:100%}.hero-copy h1{font-size:clamp(48px,12vw,62px)}.hero-side{min-height:420px}.photo-frame{max-width:308px}.portrait{height:395px}.photo-tag{max-width:220px}.metric-grid{gap:9px}.metric{min-height:166px;padding:20px 12px}.journey-button b{font-size:12px}.project-name{font-size:49px}.about-h1{font-size:52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* SIGNAL visual identity in project showcase */
.signal-project-brand{display:flex;align-items:center;gap:14px;margin:9px 0 2px}.signal-project-brand img{border-radius:12px;box-shadow:0 5px 16px #2b23672d;flex-shrink:0}.signal-project-brand .project-name{margin:0}
@media(max-width:520px){.signal-project-brand img{width:42px;height:42px}}

/* Unified narrative: one introduction, one journey, one independent project page */
.hero{padding:42px 0 66px}
.hero-grid{grid-template-columns:1.09fr .91fr;gap:48px;min-height:565px}
.hero-copy{padding:26px 0}
.hero-copy h1{font-size:clamp(49px,4.65vw,70px);line-height:1.115;letter-spacing:-.047em;margin:18px 0 25px;max-width:660px}
.hero-lede{max-width:555px;line-height:1.79;font-size:16px}
.hero-side{min-width:0}.photo-frame{width:min(100%,415px);margin:0 auto}
.portrait{height:515px}.photo-tag{left:-22px;bottom:38px}.orbit-text{right:-10px;top:17px}
.about-integrated{background:#fff;padding:103px 0 88px}
.about-intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:75px;align-items:start;margin-bottom:35px}
.about-intro-grid h2{font:600 clamp(36px,4vw,58px)/1.15 var(--serif);letter-spacing:-.05em;margin:17px 0 0}
.about-intro-text p{color:#5e5a72;line-height:1.91;font-size:15px;margin:0 0 15px}.about-intro-text strong{color:#383053}
.inline-discover{display:inline-flex;gap:15px;align-items:center;color:#6552ba;font-weight:800;font-size:13px;margin-top:7px;border-bottom:1px solid #c5b9eb;padding-bottom:7px}
.about-integrated .lens{min-height:194px}.about-integrated .lens-icon{margin:18px 0 14px}
.journey{padding-top:99px;padding-bottom:105px}
.journey-split{display:block}.journey-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;position:relative;margin-bottom:21px}
.journey-nav:before{content:'';position:absolute;left:6%;right:6%;top:50%;height:2px;background:linear-gradient(90deg,#d7ccf5,#b3a2ee,#bcd2d9);z-index:0}
.journey-button{position:relative;z-index:1;min-height:134px;display:flex;flex-direction:column;justify-content:space-between;gap:17px;border-radius:20px;padding:20px;box-shadow:0 10px 23px #2718490a}
.journey-button span:first-child{width:35px;height:35px;border-radius:50%;background:#f0ebfd;display:grid;place-items:center;font-weight:800;color:#7255cb}
.journey-button[aria-pressed="true"]{background:#f0ebff;border-color:#8a70df;box-shadow:0 14px 30px #6b58bc25;transform:translateY(-3px)}
.journey-button[aria-pressed="true"] span:first-child{background:#775bd3;color:white}
.journey-button b{font-size:16px}.journey-button small{font-size:11px;line-height:1.45}
.journey-stage{min-height:285px;padding:35px 42px;border-radius:22px}
.journey-stage h3{font-size:clamp(28px,3vw,42px);margin:12px 0}
.journey-stage p{max-width:800px;font-size:15px;line-height:1.7}
.journey-stage-foot{margin-top:23px;padding-top:17px}
.evidence{padding:83px 0 91px}.spark{padding:110px 0}.project{padding:108px 0}
@media (max-width:1020px){.hero-grid{gap:28px}.hero-copy h1{font-size:clamp(45px,5.3vw,58px)}.about-intro-grid{gap:32px}.journey-nav{gap:10px}.journey-button{padding:15px}.photo-tag{left:-7px}}
@media (max-width:760px){.hero{padding:28px 0 56px}.hero-grid,.about-intro-grid{grid-template-columns:1fr}.hero-grid{gap:12px}.hero-copy{padding:17px 0}.hero-copy h1{font-size:clamp(43px,9vw,66px)}.hero-side{min-height:unset;padding-top:28px}.photo-frame{width:min(100%,350px)}.portrait{height:415px}.orbit-text{right:0}.about-integrated{padding:74px 0}.about-intro-grid{gap:17px}.journey{padding:75px 0}.journey-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-nav:before{display:none}.journey-button{min-height:125px}.journey-stage{padding:25px 22px;min-height:320px}.journey-stage p{font-size:14px}.evidence{padding:75px 0}.spark{padding:75px 0}.project{padding:75px 0}}
@media(max-width:390px){.hero-copy h1{font-size:clamp(41px,11vw,52px)}.journey-nav{gap:8px}.journey-button{padding:12px}.journey-button b{font-size:13px}.portrait{height:385px}.photo-frame{max-width:295px}}

/* Subtle single-page reading indicator */
.page-reading-progress{position:fixed;z-index:101;top:0;left:0;height:3px;width:100%;background:linear-gradient(90deg,#6a4bc9,#a68afd,#4fa9ac);transform:scaleX(0);transform-origin:left;pointer-events:none;box-shadow:0 0 12px #9b82ef77}
@media(prefers-reduced-motion:reduce){.page-reading-progress{box-shadow:none}}
