@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#293f55;--muted:#626f7d;--paper:#f3f5f7;--line:#d5dde5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px}button,a{cursor:pointer}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}header{height:105px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin:0 6%;gap:24px}.brand{font-family:Manrope,sans-serif;font-weight:800;font-size:23px;letter-spacing:-1px;white-space:nowrap}nav{display:flex;gap:32px;font-size:13px}.outline{border:1px solid #b7c3ce;border-radius:6px;padding:13px 18px;font-size:12px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding:68px 6% 65px;max-width:1600px;margin:auto}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px}h1{font-family:Manrope,sans-serif;font-size:clamp(48px,5.2vw,78px);font-weight:500;line-height:1.12;letter-spacing:-4px;margin:25px 0}em{font-family:Georgia,serif;font-weight:400}h1 em{color:#637f9b}p{color:var(--muted);line-height:1.8}.hero p{max-width:390px;font-size:15px;margin-bottom:28px}.button{border:0;background:var(--ink);color:white;display:inline-flex;align-items:center;padding:16px 22px;border-radius:5px;font-size:12px}.text-link{font-size:12px;margin-left:20px;border-bottom:1px solid #bbc7d2;padding-bottom:5px}.hero-note{margin-top:37px;color:#657585;font-size:11px}.art{min-height:500px;position:relative;overflow:hidden;background:#e0e7ed;border-radius:140px 140px 8px 8px}.art-label{position:absolute;top:45px;width:100%;text-align:center;font-size:9px;letter-spacing:2.5px}.sun{position:absolute;width:145px;height:145px;border-radius:50%;background:#b7c9db;top:110px;left:calc(50% - 72px)}.orbit{position:absolute;border:1px solid #91a7bd70;border-radius:50%;width:310px;height:310px;left:calc(50% - 155px);top:55px}.hill{position:absolute;border-radius:50% 50% 0 0;width:150%;height:340px;bottom:-110px}.back{background:#a9bacb;bottom:-5px;left:0;transform:rotate(25deg)}.middle{background:#748fa9;left:-50%;bottom:-95px;transform:rotate(30deg)}.front{background:#3d5b78;left:5%;bottom:-135px;transform:rotate(-22deg)}.art-footer{position:absolute;bottom:28px;left:30px;right:30px;display:flex;justify-content:space-between;color:#edf3f8;font-size:9px;letter-spacing:2px}.art-footer span{font-size:27px}.mantra{border-block:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:24px 10%;font-size:10px;letter-spacing:1.5px}.mantra i{font-size:23px;font-style:normal;color:#708ba7}.section{padding:80px 6%;max-width:1600px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:end}h2{font-family:Manrope,sans-serif;font-size:42px;line-height:1.18;letter-spacing:-1.8px;font-weight:500;margin:16px 0 22px}.section-top p{font-size:13px}.filters{display:flex;gap:8px;margin:25px 0 30px;flex-wrap:wrap}.filters button{border:1px solid #d4dee8;border-radius:30px;background:transparent;padding:10px 18px;font-size:11px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#e8eef4;padding:26px;text-align:left;border:1px solid #d4dfe8;border-radius:7px;transition:transform .2s}.card:hover{transform:translateY(-4px)}.card:nth-child(3n+2){background:#edeff2}.card:nth-child(3n){background:#e2eaf1}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.card-icon{font-size:27px}.card-category{font-size:9px;letter-spacing:1.5px;color:#61758a}.card h3{font-family:Manrope,sans-serif;font-size:20px;font-weight:600;letter-spacing:-.6px;margin:0}.card p{font-size:12px;line-height:1.7;min-height:41px}.card-bottom{border-top:1px solid #cbd7e2;padding-top:16px;margin-top:23px;display:flex;justify-content:space-between;font-size:10px}.quote{background:#2b4056;color:#f2f6fa;text-align:center;padding:50px 20px}.quote>span{color:#b7d1e8;font-size:30px}.quote p{color:inherit;font-family:Manrope,sans-serif;font-size:34px;line-height:1.4;letter-spacing:-1px;margin:15px}.quote p em{color:#bed4e7}.quote small{font-size:9px;letter-spacing:2px}.ritual{display:grid;grid-template-columns:1fr 1fr;gap:12%}.ritual>div>p{max-width:340px;font-size:13px}.progress{height:4px;background:#d8e1e9;max-width:280px;margin:30px 0 12px}.progress div{height:100%;width:0;background:#6488ad;transition:width .3s}.ritual small{font-size:10px;color:#627589}.ritual-list label{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:24px 0;cursor:pointer}.ritual-list label:first-child{padding-top:0}.ritual-list input{accent-color:#4c7095;width:18px;height:18px;margin:4px 0;flex-shrink:0}.ritual-list strong{display:block;font-size:18px;margin:8px 0}.ritual-list p{font-size:12px;margin:0}.journal{background:#e5ecf2;max-width:none;display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.journal>div>p{font-size:13px}.journal-tabs{display:flex;flex-direction:column;align-items:start;gap:5px;margin:25px 0}.journal-tabs button{border:0;background:transparent;padding:10px 0;font-size:13px}.journal-tabs button.active{font-weight:700;border-bottom:1px solid #6d88a2}.privacy{font-size:10px!important;max-width:280px;color:#657688}.journal-paper{padding:28px;background:#f9fbfd;border:1px solid #d2dee8;border-radius:5px}.paper-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#63788d}.journal-paper h3{font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:1.4;margin:27px 0 15px}.journal-paper textarea{resize:vertical;width:100%;height:180px;border:0;background:repeating-linear-gradient(transparent,transparent 31px,#dfe7ef 31px,#dfe7ef 32px);line-height:32px;outline-offset:5px;color:var(--ink);font-size:13px}.paper-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:10px}.paper-bottom span{font-size:10px;color:#657688}.paper-bottom button{background:var(--ink);border:0;border-radius:4px;padding:12px 16px;color:white;font-size:11px}.journal-actions{display:flex;gap:20px;margin-top:20px}.journal-actions button{background:none;border:0;padding:0;font-size:10px;text-decoration:underline}.saved-entry{border-top:1px solid var(--line);padding-top:15px;margin-top:15px}.saved-entry p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.closing{text-align:center;padding:80px 20px}.closing h2{margin:25px 0 30px}footer{border-top:1px solid var(--line);margin:0 6%;padding:30px 0;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#63778c}footer .brand{font-size:18px;color:var(--ink)}dialog{border:1px solid #cddae6;border-radius:12px;max-width:620px;width:calc(100% - 32px);max-height:88vh;padding:40px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#182b40a0;backdrop-filter:blur(4px)}dialog .close{float:right;border:0;background:none;font-size:28px}dialog h2{font-size:32px}dialog p,dialog li{font-size:14px;line-height:1.8}dialog li{margin:10px 0}dialog h4{margin-bottom:6px}.reflection{background:#e5edf5;padding:20px;border-radius:6px;margin:24px 0}:focus-visible{outline:2px solid #527fa9;outline-offset:5px}@media(max-width:900px){nav{gap:15px}.outline{display:none}.hero{gap:5%;padding-top:40px}h1{font-size:49px;letter-spacing:-2.5px}.art{min-height:440px}.text-link{display:block;width:max-content;margin:20px 0}.cards{grid-template-columns:repeat(2,1fr)}.ritual,.journal{gap:6%}h2{font-size:35px}}@media(max-width:600px){header{height:80px}.brand{font-size:19px}nav a{font-size:11px}nav a:first-child{display:none}.hero{grid-template-columns:1fr;padding:40px 6%}h1{font-size:54px}.text-link{display:inline-block;margin-left:15px}.hero-note{margin:25px 0}.art{min-height:350px;border-radius:100px 100px 6px 6px}.art-label{top:25px}.sun{top:70px;width:115px;height:115px;left:calc(50% - 57px)}.mantra{padding:18px 6%;font-size:7px;letter-spacing:.5px;gap:8px}.mantra i{font-size:15px}.section{padding:50px 6%}.section-top{display:block}.cards{grid-template-columns:1fr}.card-top{margin-bottom:18px}.card p{min-height:0}.quote p{font-size:27px}.ritual,.journal{grid-template-columns:1fr;gap:35px}.journal-paper{padding:22px}.closing{padding:55px 6%}footer{flex-wrap:wrap;gap:22px}footer>span{display:none}.paper-top{font-size:7px}dialog{padding:25px}.filters button{padding:9px 12px;font-size:10px}}

/* Optional ambient flute player */
.music-player{position:fixed;bottom:22px;right:22px;z-index:20;display:flex;align-items:center;gap:14px;padding:14px 18px;background:#f3f5f7f5;border:1px solid #bbcbd9;border-radius:14px;box-shadow:0 6px 30px #293f5520;backdrop-filter:blur(12px);color:#293f55}.music-player>button{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;background:#3d5b78;color:#fff;border:0;border-radius:50%;font-size:16px}.music-player>button:hover{background:#293f55}.music-player>button:disabled{opacity:.6}.music-copy{display:flex;flex-direction:column;gap:3px}.music-copy strong{font-size:12px;font-weight:600}.music-copy span{font-size:10px;color:#52687e}.music-copy small{font-size:9px;color:#63778c}.music-volume-label{font-size:9px;display:flex;flex-direction:column;gap:7px;color:#52687e}.music-volume-label input{width:65px;accent-color:#4c7095;cursor:pointer;margin:0}footer{padding-bottom:115px}@media(max-width:600px){.music-player{bottom:12px;right:12px;left:12px;gap:12px;padding:12px 14px}.music-copy{flex:1}.music-volume-label input{width:60px}footer{padding-bottom:120px}}
