:root{--bg-dawn: linear-gradient(170deg, #3e4f52 0%, #4a5b56 35%, #536458 70%, #5c685f 100%);--bg-morning: linear-gradient(170deg, #4f5a4e 0%, #5d6552 35%, #656b56 70%, #706d5f 100%);--bg-afternoon: linear-gradient(170deg, #6a6458 0%, #75695d 35%, #7a5f4e 70%, #6e4e3f 100%);--bg-dusk: linear-gradient(170deg, #73624f 0%, #6d5447 35%, #5f3e33 70%, #4a2e26 100%);--bg-night: linear-gradient(170deg, #3a3029 0%, #2e2520 35%, #241d1a 70%, #1a1412 100%);--surface: rgba(17, 14, 12, .32);--surface-strong: rgba(17, 14, 12, .48);--surface-glass: rgba(255, 255, 255, .04);--surface-glass-hover: rgba(255, 255, 255, .07);--stroke: rgba(255, 255, 255, .1);--stroke-hover: rgba(255, 255, 255, .18);--heading: #fbf7ef;--body: #eee6d8;--muted: #c0b5a3;--accent: #71cfb6;--accent-strong: #5fb89f;--accent-glow: rgba(113, 207, 182, .25);--accent-subtle: rgba(113, 207, 182, .08);--warm: #e8c47a;--warm-subtle: rgba(232, 196, 122, .1);--focus: #fff1bd;--error: #ffb2a6;--error-bg: rgba(255, 178, 166, .08);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .12);--shadow: 0 8px 32px rgba(0, 0, 0, .18);--shadow-lg: 0 24px 64px rgba(0, 0, 0, .24);--radius: 24px;--radius-sm: 14px;--radius-xs: 10px;--container: 1160px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;font-family:"Source Sans 3",system-ui,sans-serif;background:#1a1412;color:var(--body);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.container{width:min(calc(100% - 2.5rem),var(--container));margin:0 auto}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes spin{to{transform:rotate(360deg)}}.site-shell{min-height:100vh;background:radial-gradient(ellipse 80% 60% at 15% 5%,rgba(113,207,182,.07),transparent),radial-gradient(ellipse 60% 50% at 85% 10%,rgba(232,196,122,.05),transparent),radial-gradient(ellipse 50% 40% at 50% 90%,rgba(113,207,182,.04),transparent),#1e1814}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);background:#1a1412c7;border-bottom:1px solid rgba(255,255,255,.06);transition:background .3s ease}.shell{display:flex;gap:1.25rem;align-items:center;justify-content:space-between;padding:.9rem 0}.brand{font-family:Cormorant Garamond,serif;font-size:2.1rem;font-weight:700;color:var(--accent);letter-spacing:.02em;transition:color .2s ease;text-shadow:0 0 40px var(--accent-glow)}.brand:hover{color:var(--heading)}.site-nav{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.nav-link{position:relative;color:var(--muted);font-size:.92rem;font-weight:500;padding:.4rem .65rem;border-radius:var(--radius-xs);transition:color .2s ease,background .2s ease}.nav-link:hover{color:var(--heading);background:#ffffff0d}.nav-link.active{color:var(--accent);background:var(--accent-subtle)}.nav-cta,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:none;cursor:pointer;font-weight:700;font-size:.95rem;letter-spacing:.01em;transition:transform .2s var(--ease-spring),box-shadow .2s ease,background .2s ease,border-color .2s ease}.nav-cta,.primary-button{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--accent-strong),var(--accent));color:#0d1f1a;box-shadow:0 4px 16px var(--accent-glow)}.nav-cta{padding:.6rem 1.15rem;font-size:.88rem}.nav-cta:hover,.primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 28px var(--accent-glow)}.nav-cta:active,.primary-button:active{transform:translateY(0);box-shadow:0 2px 8px var(--accent-glow)}.primary-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.secondary-button{padding:.75rem 1.5rem;border:1.5px solid rgba(255,255,255,.16);color:var(--heading);background:#ffffff0a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.secondary-button:hover{transform:translateY(-2px);border-color:#ffffff47;background:#ffffff14;box-shadow:0 4px 16px #0000001f}.story-section{position:relative;padding:6rem 0;overflow:hidden}.story-section:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(80%,600px);height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow),transparent)}.story-section.dawn,.story-section.tone-dawn{background:var(--bg-dawn)}.story-section.morning,.story-section.tone-morning{background:var(--bg-morning)}.story-section.afternoon,.story-section.tone-afternoon{background:var(--bg-afternoon)}.story-section.dusk,.story-section.tone-dusk{background:var(--bg-dusk)}.story-section.night,.story-section.tone-night{background:var(--bg-night)}.story-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:3rem;align-items:start}.eyebrow{margin:0 0 .85rem;color:var(--accent);text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;font-weight:700;animation:fadeUp .6s var(--ease-out) both}.section-title,.journey-card h2,.review-title{margin:0;color:var(--heading);font-family:Cormorant Garamond,serif;font-size:clamp(2.4rem,5.5vw,4.2rem);font-weight:600;line-height:1;letter-spacing:-.01em;animation:fadeUp .7s var(--ease-out) .1s both}.section-lead{margin:1.25rem 0 0;font-size:1.15rem;color:var(--body);line-height:1.75;max-width:36rem;animation:fadeUp .7s var(--ease-out) .2s both}.section-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem;animation:fadeUp .7s var(--ease-out) .3s both}.story-body{display:grid;gap:1.25rem;animation:slideInRight .7s var(--ease-out) .2s both}.story-body p,.journey-card p,.footer-copy,.review-copy,.review-block p,.review-note,.submit-hint{margin:0;line-height:1.8;color:var(--body);font-size:1.05rem}.journey-card-grid{display:grid;gap:1rem}.journey-card{position:relative;padding:1.5rem;border-radius:var(--radius-sm);background:var(--surface-glass);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-out),box-shadow .3s ease,border-color .3s ease,background .3s ease}.journey-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#71cfb647;background:var(--surface-glass-hover)}.journey-card h2{font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.15;margin-bottom:.5rem}.journey-stage,.card-mark,.review-label,.footer-mark{margin:0 0 .6rem;color:var(--accent);text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:700}.grief-stack{display:grid;gap:1rem;padding:2rem;border-radius:var(--radius);background:#0a080752;border:1px solid rgba(255,255,255,.06);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.grief-stack p{font-family:Cormorant Garamond,serif;font-size:1.35rem;font-weight:500;line-height:1.6;color:var(--body);font-style:italic;padding-left:1.25rem;border-left:2px solid var(--accent-glow)}.wizard-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:1.5rem;align-items:start}.directive-form,.review-panel{padding:1.5rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--stroke);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.form-grid{display:grid;gap:1.25rem}.card{display:grid;gap:1rem;padding:1.35rem;background:var(--surface-glass);border-radius:18px;border:1px solid var(--stroke);transition:border-color .3s ease}.card:hover{border-color:var(--stroke-hover)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field-grid .full{grid-column:1 / -1}.nested-fields{margin-top:.35rem}label{display:grid;gap:.4rem;color:var(--heading);font-weight:600;font-size:.92rem}input,select{width:100%;border:1.5px solid var(--stroke);border-radius:var(--radius-sm);background:#ffffff0d;color:var(--heading);padding:.75rem 1rem;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}input:hover,select:hover{border-color:var(--stroke-hover);background:#ffffff12}input::placeholder{color:#eee6d859}input:focus,select:focus{outline:none;border-color:var(--accent);background:#71cfb60a;box-shadow:0 0 0 3px var(--accent-glow)}button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:2px}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c0b5a3' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.choice-row{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--heading);padding:.5rem 0;cursor:pointer}.choice-row input{width:auto;accent-color:var(--accent)}.choice-row.emphasize{padding:1.1rem 1.25rem;border-radius:var(--radius-sm);background:var(--accent-subtle);border:1px solid rgba(113,207,182,.18);transition:border-color .2s ease}.choice-row.emphasize:hover{border-color:#71cfb652}.segmented{display:grid;gap:.6rem}.segmented label{display:flex;align-items:center;gap:.75rem;padding:1rem 1.15rem;border-radius:var(--radius-sm);background:var(--surface-glass);border:1.5px solid var(--stroke);cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.segmented label:hover{border-color:var(--stroke-hover);background:var(--surface-glass-hover)}.segmented label:has(input:checked){border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 0 0 1px var(--accent-glow)}.segmented input{width:auto;accent-color:var(--accent)}.option-text{display:grid;gap:.2rem}.option-desc{font-size:.88rem;font-weight:400;color:var(--muted);line-height:1.5}.error-text{min-height:1rem;color:var(--error);font-size:.85rem;font-weight:500}.submit-error{margin:0;padding:.85rem 1rem;border-radius:var(--radius-xs);background:var(--error-bg);border:1px solid rgba(255,178,166,.18);color:var(--error);line-height:1.6}.review-panel{position:sticky;top:5.5rem;display:grid;gap:1.1rem}.review-title{font-size:clamp(1.8rem,3.5vw,2.6rem)}.review-block{display:grid;gap:.3rem;padding-top:1rem;border-top:1px solid var(--stroke)}.review-note{padding:1rem 1.15rem;border-radius:var(--radius-sm);background:var(--warm-subtle);border:1px solid rgba(232,196,122,.16);font-size:.95rem}.save-success{padding:1.1rem 1.25rem;border-radius:var(--radius-sm);background:var(--accent-subtle);border:1px solid rgba(113,207,182,.22);display:grid;gap:.3rem;animation:fadeUp .4s var(--ease-out) both}.submit-hint{color:var(--accent);font-weight:500}.site-footer{position:relative;background:linear-gradient(180deg,#261f1b,#1a1412);border-top:1px solid rgba(255,255,255,.06)}.site-footer:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:min(60%,400px);height:1px;background:linear-gradient(90deg,transparent,var(--accent-glow),transparent)}.footer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;padding:3rem 0 4rem}.footer-mark{font-family:Cormorant Garamond,serif;font-size:1.2rem;color:var(--heading);font-weight:600}.footer-copy{font-size:.95rem;color:var(--muted);line-height:1.7}.auth-card{max-width:420px}.toggle-auth{margin-top:1rem;color:var(--muted);font-size:.92rem;text-align:center}.link-button{background:none;border:none;color:var(--accent);cursor:pointer;font-size:inherit;font-weight:600;text-decoration:none;padding:0;transition:color .2s ease}.link-button:hover{color:var(--heading)}.loading-spinner{display:flex;justify-content:center;align-items:center;padding:3rem}.loading-spinner:after{content:"";width:2.2rem;height:2.2rem;border:3px solid var(--stroke);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.story-section.tone-night .section-title,.story-section.night .section-title{font-size:clamp(3rem,7vw,5.5rem)}.story-section.tone-night .eyebrow,.story-section.night .eyebrow{font-size:1rem;letter-spacing:.3em}.menu-toggle{display:none;background:none;border:none;color:var(--heading);cursor:pointer;padding:.5rem;border-radius:var(--radius-xs);transition:background .2s ease}.menu-toggle:hover{background:#ffffff14}.menu-toggle svg{display:block}@media (max-width: 1100px){.story-grid,.wizard-shell{grid-template-columns:1fr}.review-panel{position:static}.story-section{padding:4.5rem 0}}@media (max-width: 820px){.menu-toggle{display:block}.site-nav{position:fixed;right:0;bottom:0;left:0;top:0;z-index:100;flex-direction:column;align-items:flex-start;gap:.25rem;padding:5rem 2rem 2rem;background:#1a1412f5;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);transform:translate(100%);transition:transform .35s var(--ease-out)}.site-nav.open{transform:translate(0)}.site-nav .nav-link,.site-nav .link-button{font-size:1.2rem;padding:.75rem .5rem;width:100%}.site-nav .nav-cta{margin-top:1rem;width:100%;text-align:center}.menu-close{position:absolute;top:1.25rem;right:1.25rem;background:none;border:none;color:var(--heading);cursor:pointer;padding:.5rem;font-size:1.5rem}.footer-grid{grid-template-columns:1fr;gap:2rem}.field-grid{grid-template-columns:1fr}.story-section{padding:3.5rem 0}.story-grid{gap:2rem}}@media (max-width: 640px){.section-title{font-size:clamp(2rem,8vw,2.8rem)}.story-section{padding:3rem 0}}@media print{.site-header,.site-footer,.site-nav{display:none}.story-section{background:#fff!important;color:#000!important;padding:1rem 0}.section-title,.heading,.eyebrow{color:#000!important}}
