@import "https://fonts.googleapis.com/css2?family=Lexend:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@700;800&display=swap";
:root{--paper:#fdf9f0;--paper-deep:#f4eadb;--ink:#261c1a;--muted:#6f5a55;--coral:#ff7f6e;--coral-deep:#a43b2f;--mint:#dff1e5;--mint-strong:#91c483;--peach:#ffede1;--butter:#fff4b8;--sky:#d4ebf8;--blue:#7db9b6;--shadow:0 24px 60px #5e3f3229;--small-shadow:0 14px 32px #5e3f321f;--radius:28px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at 12% 8%, #ffe46959, transparent 26rem), radial-gradient(circle at 82% 14%, #d4ebf8cc, transparent 28rem), linear-gradient(180deg, #fffdf8 0%, var(--paper) 42%, #fbf0df 100%);margin:0;font-family:Lexend,ui-rounded,Trebuchet MS,sans-serif}body:before{z-index:-1;pointer-events:none;content:"";opacity:.3;background-image:linear-gradient(#a43b2f0d 1px,#0000 1px),linear-gradient(90deg,#a43b2f0a 1px,#0000 1px);background-size:46px 46px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}main{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input{font:inherit}.site-header{z-index:20;width:min(1180px,100% - 32px);box-shadow:var(--small-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8db;border:2px solid #a43b2f2e;border-radius:999px;justify-content:space-between;align-items:center;gap:18px;margin:14px auto 0;padding:10px 14px 10px 18px;display:flex;position:sticky;top:14px}.brand{color:var(--coral-deep);cursor:pointer;background:0 0;border:0;padding:0;font-family:Plus Jakarta Sans,ui-sans-serif,sans-serif;font-weight:800}.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.site-header nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 12px;font-size:.86rem;font-weight:700}.site-header nav button:hover,.site-header nav button.active{background:var(--peach);color:var(--coral-deep)}.hero,.panel,.now-chapter,.achievements,.moments,.dream-section,.site-footer{width:min(1180px,100% - 36px);margin:0 auto}.hero{grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);align-items:center;gap:clamp(34px,7vw,96px);min-height:calc(100vh - 96px);padding:72px 0 54px;display:grid;position:relative}.hero-copy{z-index:1;position:relative}.eyebrow{width:fit-content;color:var(--coral-deep);letter-spacing:.02em;text-transform:uppercase;background:#ffffffb3;border:2px dashed #a43b2f3d;border-radius:999px;padding:7px 12px;font-size:.78rem;font-weight:800;display:inline-flex}h1,h2,h3,h4{letter-spacing:0;margin:0;font-family:Plus Jakarta Sans,ui-sans-serif,sans-serif}h1{max-width:760px;color:var(--coral-deep);margin-top:18px;font-size:clamp(3.8rem,9vw,7.4rem);line-height:.92}.hero-copy p{max-width:620px;color:var(--muted);margin:24px 0 0;font-size:clamp(1.2rem,2.2vw,1.7rem);line-height:1.5}.trait-row{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.trait-row span{color:#315f5d;background:#fff;border:2px solid #7db9b659;border-radius:999px;padding:10px 16px;font-weight:800;box-shadow:0 8px #7db9b629}.paper-frame{box-shadow:var(--shadow);background:#fffdfa;border:2px solid #a43b2f29;border-radius:34px;margin:0;padding:16px 16px 44px;position:relative;transform:rotate(2deg)}.paper-frame:before{z-index:-1;background:var(--butter);content:"";border-radius:34px;position:absolute;inset:18px;transform:rotate(-5deg)}.paper-frame img{aspect-ratio:1;object-fit:cover;border-radius:24px}figcaption{color:var(--muted);font-size:.9rem;font-weight:700}.paper-frame figcaption{background:var(--butter);color:var(--coral-deep);border-radius:999px;padding:8px 12px;position:absolute;bottom:14px;right:18px}.tape{z-index:2;background:#ffffffb8;border-radius:5px;width:116px;height:28px;position:absolute;box-shadow:0 4px 12px #4e372e1a}.tape-top{top:-13px;left:50%;transform:translate(-50%)rotate(-4deg)}.doodle-star,.doodle-star:before{background:var(--butter);clip-path:polygon(50% 0%,62% 35%,100% 35%,69% 56%,82% 100%,50% 73%,18% 100%,31% 56%,0 35%,38% 35%);width:34px;height:34px;position:absolute}.star-a{opacity:.7;top:16%;left:48%}.star-b{opacity:.45;bottom:24%;right:0;transform:rotate(18deg)scale(1.4)}.panel{box-shadow:var(--small-shadow);border:2px solid #a43b2f1f;border-radius:42px;padding:clamp(28px,5vw,54px);position:relative}.panel.mint{background:linear-gradient(135deg,#e2f1e7f2,#d4ebf8b8)}.panel.peach{background:linear-gradient(135deg,#ffede1f5,#fff9e3d1)}.section-heading{max-width:720px}.section-heading.centered{text-align:center;margin-inline:auto}.chapter-heading{text-align:center;width:min(760px,100%);margin:0 auto 34px}.chapter-heading h2{color:var(--coral-deep);margin:8px 0 0;font-size:clamp(3rem,8vw,6.4rem);line-height:.95}.chapter-heading p{max-width:680px;color:var(--muted);margin:16px auto 0;font-size:1.08rem;line-height:1.65}.chapter-number{color:var(--blue);background:#fff;border:2px dashed #a43b2f38;border-radius:999px;padding:9px 14px;font-weight:900;display:inline-flex}.section-heading h2,.section-heading h3{color:var(--coral-deep);margin-top:12px;font-size:clamp(2.1rem,4.6vw,4.3rem);line-height:1.02}.section-heading p{max-width:650px;color:var(--muted);margin:16px auto 0;font-size:1.04rem;line-height:1.65}.today-grid{grid-template-columns:1.05fr .82fr;align-items:end;gap:clamp(24px,5vw,54px);margin-top:36px;display:grid}.storybook-copy{color:#385450;gap:18px;font-size:clamp(1.04rem,1.4vw,1.24rem);line-height:1.75;display:grid}.storybook-copy p{margin:0}.today-card{box-shadow:var(--small-shadow);background:#fffefa;border-radius:28px;padding:12px 12px 18px;position:relative;transform:rotate(-1.5deg)}.today-card img{aspect-ratio:5/4;object-fit:cover;border-radius:20px}.today-card p{color:var(--coral-deep);margin:12px 6px 0;font-weight:800}.achievements,.moments,.dream-section{padding:92px 0;position:relative}.ribbon-path{z-index:-1;border:7px solid #0000;border-color:#ffe4697a #0000 #0000 #ffe4697a;border-radius:46% 20% 0 0;width:min(920px,82vw);height:68%;position:absolute;top:230px;left:50%;transform:translate(-50%)rotate(-2deg)}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:42px;display:grid}.achievement-card{box-shadow:var(--small-shadow);background:#fffdfa;border:2px solid #a43b2f1f;border-radius:28px;gap:16px;padding:14px;transition:transform .18s,box-shadow .18s;display:grid;position:relative}.achievement-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)rotate(0)}.achievement-card:nth-child(2n){transform:rotate(1deg)}.achievement-card:nth-child(odd){transform:rotate(-1deg)}.achievement-card img{aspect-ratio:1.45;object-fit:cover;border-radius:18px}.achievement-card div{padding:0 8px 6px}.achievement-card h3,.achievement-card h4{color:var(--coral-deep);font-size:1.35rem}.achievement-card p{color:var(--muted);line-height:1.55}.achievement-card.mint{background:linear-gradient(180deg, white, var(--mint))}.achievement-card.peach{background:linear-gradient(180deg, white, var(--peach))}.achievement-card.yellow{background:linear-gradient(180deg, white, var(--butter))}.achievement-card.blue{background:linear-gradient(180deg, white, var(--sky))}.card-number{color:var(--blue);letter-spacing:.12em;font-size:.78rem;font-weight:900;display:block}.pin{background:var(--coral);border:4px solid #fff;border-radius:999px;width:22px;height:22px;position:absolute;top:-10px;left:50%;transform:translate(-50%);box-shadow:0 4px 10px #5e3f322e}.art-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:38px;display:grid}.art-card{box-shadow:var(--small-shadow);transform:rotate(var(--tilt));background:#fffefa;border:2px solid #a43b2f1f;border-radius:24px;margin:0;padding:12px 12px 18px;transition:transform .18s;position:relative}.art-card:hover{transform:rotate(0)translateY(-4px)}.art-card img{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%}.art-card figcaption{gap:6px;margin-top:12px;display:grid}.art-card strong{color:var(--coral-deep);font-size:1rem}.art-card span{color:var(--muted);line-height:1.45}.moment-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:42px;display:grid}.moment-card{box-shadow:var(--small-shadow);background:#fff;border:2px solid #a43b2f1f;border-radius:30px;overflow:hidden}.moment-card img{aspect-ratio:1.15;object-fit:cover;width:100%}.moment-card div{padding:22px}.moment-card h3,.moment-card h4{color:var(--coral-deep);font-size:1.3rem}.moment-card p{color:var(--muted);line-height:1.55}.dream-section{padding-top:42px}.dream-machine{box-shadow:var(--shadow);background:radial-gradient(circle at 16% 18%,#ffe4698a,#0000 11rem),radial-gradient(circle at 82% 18%,#d4ebf8d1,#0000 13rem),linear-gradient(135deg,#ffede1fa,#e2f1e7eb);border:3px solid #ff7f6e47;border-radius:42px;margin-top:34px;padding:clamp(22px,4vw,44px);position:relative}.dream-form{z-index:1;gap:16px;display:grid;position:relative}.dream-form label{color:var(--coral-deep);font-family:Plus Jakarta Sans,ui-sans-serif,sans-serif;font-size:clamp(1.6rem,3vw,2.8rem);font-weight:800}.input-row{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.input-row input{min-width:0;color:var(--ink);background:#ffffffe0;border:2px solid #a43b2f2e;border-radius:20px;outline:none;padding:18px 20px;box-shadow:inset 0 3px #5e3f320a}.input-row input:focus{border-color:var(--coral);box-shadow:0 0 0 5px #ff7f6e24}.input-row button,.role-chips button{cursor:pointer;border:0;font-weight:900}.input-row button{background:var(--coral);color:#fff;border-radius:20px;padding:18px 24px;transition:transform .14s,box-shadow .14s;box-shadow:0 8px #d75a4f}.input-row button:hover{transform:translateY(-2px);box-shadow:0 10px #d75a4f}.input-row button:disabled{cursor:wait;opacity:.78}.role-chips{flex-wrap:wrap;gap:8px;display:flex}.role-chips button{color:#315f5d;background:#fff;border:2px solid #7db9b657;border-radius:999px;padding:9px 13px}.generator-state{color:var(--muted);background:#ffffff9e;border:2px dashed #a43b2f38;border-radius:26px;margin-top:24px;padding:22px}.idle-state{gap:14px;display:grid}.future-placeholder{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.future-placeholder div{background:linear-gradient(110deg, #ffffff8c 8%, #ffffffe6 18%, #ffffff8c 33%), var(--sky);background-size:260% 100%;border:2px solid #7db9b652;border-radius:22px;min-height:160px;animation:2.2s linear infinite shimmer}.magic-loader{justify-content:center;gap:12px;padding:26px 0 12px;display:flex}.magic-loader span{background:var(--coral);border-radius:999px;width:18px;height:18px;animation:.9s ease-in-out infinite bounce}.magic-loader span:nth-child(2){background:var(--blue);animation-delay:.12s}.magic-loader span:nth-child(3){background:var(--mint-strong);animation-delay:.24s}.loading-state,.error-state{text-align:center}.error-state{background:#fff3f0;border-color:#ba1a1a38}.error-state h3{color:var(--coral-deep)}.paper-sparkle{background:#fff;border-radius:40% 60% 55% 45%;width:18px;height:18px;animation:4s ease-in-out infinite float;position:absolute;box-shadow:0 0 0 7px #ffffff38}.paper-sparkle.one{top:28px;right:12%}.paper-sparkle.two{animation-delay:.6s;bottom:38px;left:9%}.paper-sparkle.three{animation-delay:1.2s;top:42%;right:5%}.future-result{margin-top:28px}.future-story-card{position:relative}.future-story-header{text-align:center;width:min(880px,100%);margin:0 auto 26px}.future-story-header h3{color:var(--coral-deep);margin-top:14px;font-size:clamp(2.1rem,4.8vw,4.5rem);line-height:.98}.future-story-header .intro{color:#315f5d;max-width:720px;margin:18px auto 0;font-size:1.08rem;font-weight:800;line-height:1.7}.future-story-weave{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:20px;display:grid}.story-section{box-shadow:var(--small-shadow);color:var(--muted);background:#fffdfae0;border:2px solid #a43b2f1f;border-radius:28px;grid-column:span 6;margin:0;padding:clamp(20px,3vw,30px);font-size:1.02rem;line-height:1.78}.story-section.lead{color:#385450;background:linear-gradient(135deg,#fffdfaf5,#fff4b89e);grid-column:span 7;font-size:1.08rem;font-weight:700}.story-section.achievement-story{grid-column:span 7}.story-section.wide{background:linear-gradient(135deg,#fffdfaf5,#d1ebee94);grid-column:2/span 10}.story-section h4{color:var(--coral-deep);margin:8px 0 14px;font-size:clamp(1.45rem,2.5vw,2.2rem);line-height:1.08}.story-section p{margin:0}.story-section p+p{margin-top:14px}.section-kicker{color:#315f5d;letter-spacing:.08em;text-transform:uppercase;background:#7db9b629;border-radius:999px;padding:7px 10px;font-size:.72rem;font-weight:900;display:inline-flex}.achievement-showcase{background:radial-gradient(circle at 14% 16%,#ffe4697a,#0000 28%),radial-gradient(circle at 88% 20%,#86c4d052,#0000 24%),linear-gradient(135deg,#fffaeaeb,#fff0e8d6);border:2px dashed #a43b2f38;border-radius:34px;grid-column:1/-1;gap:24px;padding:clamp(22px,3vw,34px);display:grid}.achievement-showcase-copy{gap:12px;max-width:880px;display:grid}.achievement-showcase-copy h4{color:var(--coral-deep);font-size:clamp(1.7rem,3.4vw,3rem);line-height:1.04}.achievement-showcase-copy p{color:#385450;margin:0;font-size:1.04rem;font-weight:750;line-height:1.7}.achievement-showcase-copy p+p{margin-top:10px}.achievement-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.future-achievement-card{background:var(--achievement-paper,#fffdfa);box-shadow:var(--small-shadow);border:2px solid #a43b2f1f;border-radius:26px;align-content:start;display:grid;overflow:hidden}.future-achievement-card:first-child{--achievement-paper:linear-gradient(180deg, white, #ffe4696b);transform:rotate(-.7deg)}.future-achievement-card:nth-child(2){--achievement-paper:linear-gradient(180deg, white, #cbe8d1ad);transform:translateY(10px)rotate(.5deg)}.future-achievement-card:nth-child(3){--achievement-paper:linear-gradient(180deg, white, #d1ebeec7);transform:rotate(.9deg)}.future-achievement-card img{aspect-ratio:4/3;object-fit:cover;width:100%}.future-achievement-card .future-image-placeholder{border-radius:0}.achievement-card-copy{gap:8px;padding:18px;display:grid}.achievement-card-copy h5{color:var(--coral-deep);font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.12}.achievement-card-copy p{color:var(--muted);margin:0;font-size:.96rem;font-weight:700;line-height:1.62}.future-details-showcase{box-shadow:var(--small-shadow);background:linear-gradient(135deg,#fffdfaf5,#d1ebee94),#fffdfa;border:2px solid #a43b2f1f;border-radius:30px;grid-column:2/span 10;gap:22px;padding:clamp(22px,3vw,34px);display:grid}.future-details-copy{gap:12px;display:grid}.future-details-copy h4{color:var(--coral-deep);font-size:clamp(1.45rem,2.5vw,2.2rem);line-height:1.08}.future-details-copy p{color:var(--muted);margin:0;font-size:1rem;font-weight:700;line-height:1.72}.future-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.future-detail-card{background:#fffdfab8;border:2px dashed #7db9b647;border-radius:22px;gap:9px;padding:18px;display:grid}.future-detail-card h5{color:var(--coral-deep);font-size:1.12rem;line-height:1.16}.future-detail-card p{color:#57423f;margin:0;font-size:.95rem;font-weight:700;line-height:1.6}.future-image{box-shadow:var(--small-shadow);background:#fff;border:2px solid #a43b2f24;border-radius:26px;grid-column:span 5;margin:0;padding:12px 12px 42px;position:relative}.future-image.portrait{grid-column:span 5;transform:rotate(1.5deg)}.future-image.work-one{grid-column:span 5;transform:rotate(-1deg)}.future-image.work-two{grid-column:span 6;transform:rotate(1deg)}.future-image.work-three{grid-column:span 5;transform:rotate(-1.5deg)}.future-image img{aspect-ratio:1;object-fit:cover;border-radius:18px;width:100%}.future-image-placeholder{aspect-ratio:4/3;color:#315f5d;background:radial-gradient(circle at 35% 35%,#ff8b7b57,#0000 24%),radial-gradient(circle at 66% 48%,#7db9b64d,#0000 20%),linear-gradient(135deg,#ffe4695c,#d1ebee80);border-radius:18px;place-items:center;width:100%;font-size:.84rem;font-weight:900;display:grid}.future-image.portrait .future-image-placeholder{aspect-ratio:1}.future-image-placeholder span{border:4px solid #315f5d2e;border-top-color:var(--coral);border-radius:999px;width:34px;height:34px;animation:.9s linear infinite spin}.future-image-placeholder p{margin:8px 0 0}.future-image-placeholder.failed span{display:none}.future-image.work img{aspect-ratio:4/3}.future-image figcaption{color:var(--coral-deep);position:absolute;bottom:12px;right:14px}.future-achievements{grid-column:span 6;gap:10px;margin:0;padding:0;list-style:none;display:grid}.future-achievements li{background:var(--butter);color:var(--coral-deep);border-radius:16px;padding:12px 14px;font-weight:800}.site-footer{text-align:center;color:var(--muted);padding:54px 0 64px}.site-footer p{color:var(--coral-deep);margin:0 0 8px;font-family:Plus Jakarta Sans,ui-sans-serif,sans-serif;font-size:1.4rem;font-weight:800}@keyframes shimmer{to{background-position-x:-260%}}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-13px)}}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-16px)rotate(12deg)}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:980px){.site-header{border-radius:26px;align-items:center}.hero,.today-grid,.future-result{grid-template-columns:1fr}.hero{min-height:auto;padding-top:56px}.paper-frame{transform:none}.achievement-grid,.art-grid,.moment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.site-header{gap:8px;width:min(100% - 24px,1180px);padding:9px 10px 9px 14px}.site-header nav button{padding:7px 9px;font-size:.8rem}.hero,.panel,.now-chapter,.achievements,.moments,.dream-section,.site-footer{width:min(100% - 24px,1180px)}h1{font-size:clamp(3rem,18vw,4.8rem)}.section-heading h2,.section-heading h3{font-size:clamp(2rem,11vw,3.2rem)}.achievement-grid,.art-grid,.moment-grid,.future-placeholder,.future-story-weave,.input-row{grid-template-columns:1fr}.story-section,.story-section.lead,.story-section.achievement-story,.story-section.wide,.achievement-showcase,.future-details-showcase,.future-image,.future-image.portrait,.future-image.work-one,.future-image.work-two,.future-image.work-three,.future-achievements{grid-column:1}.achievement-card-grid,.future-detail-grid{grid-template-columns:1fr}.future-achievement-card,.future-achievement-card:first-child,.future-achievement-card:nth-child(2),.future-achievement-card:nth-child(3){transform:none}.input-row button{width:100%}}
