@font-face{font-family:Rise;src:url(fonts/rise.ttf);font-display:swap}*{box-sizing:border-box}body{margin:0;background:#f7f4ed;color:#2c414c;font:14px/1.9 Rise,system-ui,sans-serif}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bb8156;outline-offset:5px}a{color:inherit;text-decoration:none}header{max-width:1360px;margin:auto;padding:28px 42px;display:flex;align-items:center;gap:25px;border-bottom:1px solid #dce0d8}.logo{font:700 29px/1.2 Georgia,serif;letter-spacing:-1px}.logo>span{color:#bf8058}.logo small{display:block;font:8px/1.8 system-ui;letter-spacing:2.5px;margin-top:5px}.header-note{margin-left:auto;color:#82918c;font-size:11px}header button{border:1px solid #d8dfd8;border-radius:30px;background:none;color:#71847d;padding:6px 14px;font-size:10px}main{max-width:1190px;margin:auto;padding:55px 24px 75px}h1,h2,h3,p{margin:0}h1{font-size:clamp(39px,5vw,66px);line-height:1.45;letter-spacing:-.045em;font-weight:600}h2{font-size:28px;line-height:1.6;font-weight:500}p{white-space:pre-line}.eyebrow{font:11px/1.7 system-ui;letter-spacing:2.4px;color:#a67e53}.hero{display:grid;grid-template-columns:1fr 1.12fr;gap:55px;align-items:center;min-height:580px}.hero h1{margin:22px 0 25px}.hero h1 em{font-style:normal;color:#a56c4b}.lead{color:#70817e;font-size:14px;line-height:2.15;margin:24px 0 30px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:14px 23px;border-radius:11px;border:1px solid #355762;background:#355762;color:#fff;transition:transform .2s,background .2s}.primary:hover{transform:translateY(-2px);background:#24444f}.secondary{background:none;border-color:#cfd9d4;color:#46636c}.secondary:hover{background:#edf1e9}.text-button{border:0;background:none;color:#798c82;padding:12px 0;font-size:12px}.small{font-size:11px;line-height:1.9;color:#829087;margin-top:15px}.hero-art{position:relative}.hero-art svg{width:100%;display:block;box-shadow:0 30px 50px #334b5a0a;border-radius:35px}.art-note{position:absolute;bottom:-15px;right:0;background:#fffdf7;box-shadow:0 8px 25px #42545b0c;border:1px solid #e2e4da;padding:14px 23px;border-radius:12px;transform:rotate(-3deg);font-size:12px}.art-note b{color:#b67f4c;font-size:20px;margin-right:10px}.hero-art:before{content:'THE MORNING AFTER';position:absolute;top:-28px;font:9px system-ui;letter-spacing:3px;color:#93a19b}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:60px;border-top:1px solid #dde1d7;padding-top:32px}.features b{font:13px Georgia;color:#b08e63}.features h3{font-size:16px;margin:9px 0}.features p{font-size:12px;color:#7e8d83}.intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;min-height:590px}.intro svg{width:100%}.intro h1{font-size:42px;margin:20px 0}.intro .lead{max-width:430px}.chip{display:inline-block;padding:5px 12px;background:#e7eee7;border-radius:20px;font-size:10px;color:#6d8376}.layout{display:grid;grid-template-columns:300px 1fr;gap:50px;align-items:start}.panel{position:sticky;top:24px}.panel svg{display:block;width:100%;margin:22px 0}.panel h3{font-size:19px;margin:10px 0}.stats{display:grid;grid-template-columns:1fr 1fr;gap:15px}.stat{background:#fffdf8;padding:12px 15px;border:1px solid #e1e5db;border-radius:12px}.stat span{font-size:10px;color:#809086}.stat strong{font:26px Georgia;display:block;margin:5px 0}.meter{height:3px;background:#e5e8df;border-radius:3px;overflow:hidden}.meter i{height:100%;display:block;background:#a4b8a2;transition:width .5s}.chapter{border:1px solid #dde3da;background:#fffdf9;border-radius:24px;padding:30px;box-shadow:0 18px 40px #334b5a04;animation:arrive .4s both}.chapter-head{display:flex;justify-content:space-between;align-items:center}.chapter-head .text-button{padding:0}.rail{display:flex;gap:5px;margin:17px 0 25px}.rail i{height:4px;background:#e9ebe3;flex:1;border-radius:5px}.rail i.done{background:#799a8f}.rail i.active{background:#dda971}.chapter h2{margin:14px 0 20px}.body{font-size:15px;line-height:2.1;color:#687b76}.callback{border-left:3px solid #d9b47d;background:#faf3e6;border-radius:0 10px 10px 0;padding:11px 15px;margin:20px 0;font-size:12px;color:#927d5f}.callback summary{cursor:pointer}.callback p{margin-top:10px}.choices{display:grid;gap:11px;margin:25px 0}.choice{display:flex;gap:15px;align-items:center;text-align:left;width:100%;border:1px solid #dce4db;border-radius:12px;background:#fff;color:#405c61;padding:16px 17px;transition:transform .2s,background .2s;min-height:76px}.choice>b{font:17px Georgia;color:#bca078}.choice>span{flex:1}.choice small{display:block;color:#82968d;font-size:10px;margin-top:6px}.choice:hover:not(:disabled){background:#edf4ec;transform:translateX(3px)}.choice.selected{background:#e9f2e7;border-color:#8cab91}.choice:disabled:not(.selected){opacity:.4}.reply{padding:21px;border:1px solid #cddfcf;background:#edf5eb;border-radius:14px;animation:arrive .35s}.reply>p{margin:13px 0 17px}.reply .primary{width:100%;margin-top:18px}.changes{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:#6a876c}.changes .negative{color:#a97b59}.warning{font-size:12px;background:#fbefdb;color:#987547;padding:10px;border-radius:8px;margin-top:15px}.result{max-width:950px;margin:auto}.result>h1{font-size:44px;margin:18px 0 30px}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.result-grid svg{width:100%}.result-grid h2{font-size:27px;margin-bottom:18px}.result-grid p{font-size:13px;color:#748578}.home-note{border-left:3px solid #c8a16e;padding:10px 15px;margin:20px 0;background:#f6efdf}.result .stats{margin-top:20px}.sharebox{padding:26px;background:#eaf0ed;border:1px solid #d8e2db;border-radius:18px;margin-top:40px}.sharebox h3{font-size:17px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.actions>*{font-size:12px}.timeline{margin-top:50px}.timeline h2{margin:12px 0 25px}.memories{display:grid;grid-template-columns:1fr 1fr;gap:18px}.memory{background:#fffdf8;border:1px solid #e1e4d8;border-radius:16px;padding:22px}.memory>span{font:10px system-ui;letter-spacing:2px;color:#b08e63}.memory h3{font-size:16px;margin:12px 0}.memory b{font-size:12px;font-weight:500;color:#678270}.memory p{font-size:12px;color:#879184;margin-top:12px}.shelf{margin-top:55px;border-top:1px solid #dce2d7;padding-top:25px}.shelf button{display:block;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #e1e5dc;padding:15px;color:#6f8277}footer{max-width:1190px;margin:auto;border-top:1px solid #dce2d8;padding:26px;font:10px/1.9 system-ui;letter-spacing:1px;color:#98a195}footer span{display:block;margin-top:10px;font-family:Rise;letter-spacing:0;font-size:10px}#notice{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#2f505c;color:white;border-radius:30px;padding:12px 20px;opacity:0;pointer-events:none;font-size:12px;max-width:92vw;z-index:10}#notice.visible{opacity:1}.sun{animation:sunrise 2s ease-out both}@keyframes sunrise{from{opacity:.4;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:800px){header{padding:22px}.header-note{display:none}header button{margin-left:auto}main{padding:35px 22px 55px}.hero,.intro{grid-template-columns:1fr;gap:60px;min-height:0}.hero h1{font-size:43px}.hero-art{max-width:520px;width:100%;margin:auto}.features{gap:20px;margin-top:55px}.layout{grid-template-columns:1fr;gap:25px}.panel{position:static}.panel svg{width:135px;float:right;margin:0 0 8px 15px}.panel .stats{grid-template-columns:repeat(4,1fr);gap:7px;clear:both;padding-top:15px}.panel h3{margin:8px 0}.stat{padding:8px 10px}.stat strong{font-size:22px}.stat span{font-size:9px}.chapter{padding:22px 18px}.chapter h2{font-size:25px}.intro h1{font-size:35px}.intro svg{max-width:470px}.result>h1{font-size:35px}.result-grid{grid-template-columns:1fr;gap:28px}.result-grid svg{max-width:430px;margin:auto}.result-grid .stats{grid-template-columns:repeat(4,1fr)}.result-grid h2{font-size:25px}.sharebox{padding:22px}.memories{grid-template-columns:1fr}.features{grid-template-columns:1fr}.features>div{display:grid;grid-template-columns:30px 1fr;gap:0 10px}.features b{grid-row:span 2;padding-top:10px}.features h3{margin:5px 0}.features p{grid-column:2}.actions .primary{width:100%}.intro{gap:30px}.intro>svg{order:2}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Five years: distinct acts, meaningful milestones, clear decision feedback. */
.hero{gap:65px}.hero h1{font-size:clamp(38px,4.6vw,62px)}.hero-art{transform:rotate(1deg)}.hero-art svg{border:8px solid #fffdf8;border-radius:38px}.journey-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:23px 24px;background:#eceee5;border:1px solid #dce2d3;border-radius:14px;margin:52px 0 0;color:#96a18b;font:11px Georgia}.journey-strip b{font:11px Rise;margin-left:9px;color:#687e70}.journey-strip i{font-style:normal;color:#bca579}.features{margin-top:30px;border-top:0;padding-top:8px}.features>div{padding:23px;border:1px solid #e0e5d9;border-radius:14px;background:#fffdf7}.act-label{font:10px system-ui;letter-spacing:2px;color:#9c875e;margin:0 0 13px}.condition{display:block;font-style:normal;font-size:10px;line-height:1.8;color:#a67c5b;padding-top:9px;margin-top:9px;border-top:1px dashed #e7d8bf}.condition.ready{color:#54806e;border-color:#c7dbca}.choice:has(.condition.ready){background:#f4f9ef;border-color:#b4caaa}.choice:has(.condition:not(.ready)){border-color:#e3d5bc}.choice>span:last-child{flex:0}.reply:has(.eyebrow){box-shadow:0 8px 24px #344e4305}.chapter{position:relative;overflow:hidden}.chapter:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#bed1c2,#e7c391,#bed3d8)}.rail{gap:4px}.achievement-book{margin-top:40px;background:#fffdf8;border:1px solid #dee4d7;padding:28px;border-radius:20px}.achievement-book h3{margin:12px 0 20px;font-size:18px}.badges{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.badges>div{padding:15px 12px;background:#f4f3e8;border-radius:12px;text-align:center;animation:badge-in .55s both;animation-delay:var(--delay)}.badges span{display:grid;place-items:center;margin:0 auto 10px;width:40px;height:40px;background:#ead8ab;color:#947449;border-radius:50%;font-size:22px}.badges b{display:block;font-size:12px;font-weight:500}.badges small{display:block;font-size:10px;color:#8b9483;line-height:1.7;margin-top:6px}.all-decisions{border-top:1px solid #d9e0d3;margin-top:25px;padding:22px 0;font-size:12px;color:#788b7c}.all-decisions summary{cursor:pointer}.all-decisions>div{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid #e2e7da}.all-decisions>div>span{font:17px Georgia;color:#baa075}.all-decisions b{font-weight:500;color:#506b5e}.all-decisions p{line-height:2}.result>h1{font-size:40px}.result-grid{padding:25px;background:#fffcf5;border:1px solid #e0e5d8;border-radius:24px}.new-landmark{animation:landmark-in .7s both}.panel .small{font-size:10px}.sharebox{background:linear-gradient(120deg,#e6eee6,#e7eff1)}.header-note{color:#6e8279}.primary{box-shadow:0 5px 0 #253f4d0b}.chapter .reply .primary{box-shadow:none}@keyframes badge-in{from{opacity:0;transform:translateY(12px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes landmark-in{from{opacity:0}to{opacity:1}}@media(max-width:800px){.hero{gap:55px}.hero h1{font-size:42px}.journey-strip{overflow-x:auto;justify-content:start;white-space:nowrap;padding:15px;gap:12px;margin-top:45px}.journey-strip b{margin-left:5px}.features>div{padding:15px}.result>h1{font-size:30px}.result-grid{padding:20px}.badges{grid-template-columns:repeat(2,1fr)}.achievement-book{padding:22px}.achievement-book h3{font-size:16px}.condition{font-size:9px}.hero-art{transform:none}.hero-art svg{border-width:5px}.art-note{font-size:10px;padding:12px 15px}.panel .stats{position:relative}.stat strong{font-size:24px}.choices{gap:10px}.choice{padding:17px 14px}.rail{gap:3px}.chapter-head .eyebrow{letter-spacing:1px}.result-grid .stats{gap:6px}.result-grid .stat{padding:8px}.header-note{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.small,.features p,.memory p,.result-grid p,.stat span,.choice small{color:#62766c}.eyebrow,.act-label{color:#886b45}.card-place,footer,footer span{color:#6e7c70}.badges small{color:#697562}.callback{color:#806644}.condition{color:#8a603f}.condition.ready{color:#39705a}.header-note{color:#62796e}.reply.breakthrough{background:#edf5dd;border-color:#b5c897;position:relative}.reply.breakthrough:after{content:'✦';position:absolute;right:20px;top:10px;color:#c49b51;font-size:30px;animation:reward .7s ease-out both;pointer-events:none}.reply.breakthrough .eyebrow{padding-right:25px;color:#68804b}h1:focus,h2:focus{outline:none}@keyframes reward{from{opacity:0;transform:scale(.2) rotate(-50deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){.reply.breakthrough:after{animation:none}}
.companion{display:flex;gap:13px;padding:16px;margin:19px 0;background:#fffaf0;border:1px solid #e3d9c5;border-radius:14px;align-items:start}.companion-mark{width:38px;height:38px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:#e8d7b3;color:#8d6f48;font:20px Georgia}.companion span{font-size:9px;color:#7f816d}.companion h3{font-size:15px;margin:1px 0 5px}.companion p{font-size:11px;color:#667767;line-height:1.8}.companion.full{padding:25px;margin-top:30px}.companion.full h3{font-size:21px}.companion.full p{font-size:13px}.companion blockquote{margin:17px 0 0;padding-left:15px;border-left:2px solid #cfb589;color:#837351;font-size:12px}.panel .companion .small{font-size:10px}@media(max-width:800px){.panel .companion{padding:10px 13px;margin:12px 0 0;clear:both}.panel .companion-mark{width:30px;height:30px;font-size:17px}.panel .companion span{display:none}.panel .companion h3{display:inline;font-size:12px;margin-right:8px}.panel .companion p{display:inline;font-size:10px}.companion.full{padding:20px}}
