@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;550;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--paper:#f8f5ef;--sand:#e8e0d6;--stone:#c9c1b6;--ink:#1a1a1a;--forest:#1f3a2e;--sage:#6b7f6a;--earth:#b77f4a;--ochre:#d4a373;--muted:#686960;--line:#d9d5ca;--error:#963d2d;--serif:'Playfair Display',Georgia,serif;--sans:'Inter',Arial,sans-serif;--radius:8px;--shadow:0 14px 45px #1f3a2e08;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4rem;--space-7:6rem}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{margin:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%2373654d' opacity='.035' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}button,a,input,textarea{touch-action:manipulation}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--earth);outline-offset:4px}button{color:inherit}h1,h2,p,figure{margin:0}h1:focus{outline:none}h1{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.12;font-size:clamp(2.4rem,3.6vw,3.55rem)}h1 em{font-weight:400;color:var(--forest)}h2{font-family:var(--serif);font-weight:400}img{display:block;max-width:100%}.site-header{height:122px;padding:24px 4.8%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);max-width:1800px;margin:auto}.brand{display:flex;flex-direction:column;text-align:center;width:155px;line-height:1}.brand>span{font-family:var(--serif);font-size:12px;letter-spacing:.43em;margin-left:.43em}.brand strong{font-family:var(--serif);font-weight:400;font-size:38px;letter-spacing:-.05em;line-height:1.24}.brand small{font-size:10px;letter-spacing:.4em;display:flex;align-items:center;gap:10px;margin-top:4px}.brand small:before,.brand small:after{content:'';height:1px;background:var(--stone);flex:1}.header-right{display:flex;align-items:center;gap:45px}.header-label,.edition,.eyebrow,.landscape-top,.landscape-bottom>span,.art-top,.intro-note>span,.site-footer,.cover-evolution figcaption{font-size:12px;font-weight:500;letter-spacing:.15em;line-height:1.6}.header-label{color:var(--muted)}.edition{border-left:1px solid var(--stone);padding-left:24px}.eyebrow{color:var(--forest);display:block}.tiny-line{display:inline-block;vertical-align:middle;height:1px;width:28px;background:var(--forest);margin-right:14px}.text-button{padding:10px 0;min-height:44px;background:none;border:0;text-underline-offset:5px;font-size:14px;color:var(--forest)}.text-button:hover{text-decoration:underline}.button{border:1px solid transparent;border-radius:var(--radius);padding:17px 24px;font-size:15px;line-height:1.5;min-height:56px;font-weight:500;display:inline-flex;justify-content:center;align-items:center;gap:28px;transition:background .15s,transform .15s}.button.primary{background:var(--forest);color:var(--paper)}.button.primary:hover{background:#304e3e}.button:active{transform:translateY(1px)}.button.secondary{border-color:var(--line);background:transparent}.button.secondary:hover{background:var(--sand)}.fine{font-size:12px;line-height:1.8;color:var(--muted)}.cover{max-width:1640px;margin:auto;padding:38px 4.8% 0;display:grid;grid-template-columns:1.1fr 1fr;column-gap:6%;position:relative}.cover-copy{padding-top:34px;min-width:0}.cover h1{font-size:clamp(3.4rem,4.9vw,5.3rem);margin-top:24px;line-height:1.06}.cover-lead{color:var(--muted);line-height:1.7;margin-top:26px;font-size:16px}.cover-cta{margin-top:32px;display:flex;align-items:flex-start;flex-direction:column;gap:12px}.cover-cta .button{min-width:260px;justify-content:space-between}.cover-evolution{margin-top:5px;overflow:hidden;position:relative}.cover-evolution img{width:100%;mix-blend-mode:multiply;margin-top:-9%;}.cover-evolution figcaption{border-top:1px solid var(--line);padding-top:12px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.12em}.cover-landscape{position:relative;border-radius:140px 140px 3px 3px;overflow:hidden;min-height:660px;max-height:840px;margin-bottom:0;background:var(--forest)}.cover-landscape>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.cover-landscape:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#1a1a1a00 35%,#0b251bc9 100%)}.landscape-top{position:absolute;top:44px;left:35px;right:35px;z-index:1;display:flex;justify-content:space-between;color:var(--forest);font-size:10px}.landscape-bottom{position:absolute;bottom:48px;left:42px;right:42px;color:var(--paper);z-index:1}.landscape-bottom p{font-family:var(--serif);font-size:clamp(1.8rem,2.8vw,2.75rem);line-height:1.2;letter-spacing:-.025em;margin:26px 0}.landscape-bottom>span{font-size:10px;opacity:.8}.cover-storage{grid-column:1/-1;font-size:12px;color:var(--muted);padding:24px 0}.site-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin:30px 4.8% 0;padding:21px 0 26px;color:var(--muted);font-size:10px;letter-spacing:.12em}.workspace{max-width:1540px;display:grid;grid-template-columns:1fr .88fr;margin:auto;min-height:calc(100svh - 220px);gap:7%;padding:40px 6% 0}.form-panel{min-width:0;max-width:640px;width:100%;padding-bottom:10px}.progress-wrap{margin-bottom:32px;max-width:640px}.progress-meta{display:flex;justify-content:space-between;text-transform:uppercase;font-size:11px;font-weight:500;letter-spacing:.12em;color:var(--forest)}.progress-divider{margin:0 8px;color:var(--stone)}.trace{width:100%;height:48px;overflow:visible;display:block;margin-top:9px}.trace path{fill:none;stroke-width:1.25}.trace-base{stroke:var(--stone)}.trace-active{stroke:var(--forest);stroke-width:1.8!important}.trace circle{stroke-width:1.2}.trace .reached{fill:var(--forest);stroke:var(--forest)}.trace .future{fill:var(--paper);stroke:var(--stone)}.trace-large{height:auto}.landscape-bottom .trace-base,.landscape .trace-base{stroke:#ebe5d694}.landscape-bottom .trace-active,.landscape .trace-active{stroke:var(--paper)}.landscape-bottom .reached,.landscape .reached{fill:var(--paper);stroke:var(--paper)}.landscape-bottom .future,.landscape .future{fill:var(--forest);stroke:var(--paper)}.screen-content{animation:appear .24s ease-out}.screen-content>.eyebrow{margin-bottom:16px;font-size:11px}.screen-content h1{margin-bottom:24px}.body-copy{font-size:15px;color:#60645a;line-height:1.8;max-width:560px;white-space:normal}.body-copy p+p{margin-top:18px}.intro-body{font-size:16px;line-height:1.9}.intro-body p:first-child{font-weight:500;color:var(--ink)}.intro-note{margin-top:32px;padding:20px 24px;background:#e8e0d663;border-left:2px solid var(--sage)}.intro-note>span{font-size:10px;color:var(--forest)}.intro-note p{font-size:13px;line-height:1.8;color:var(--muted);margin-top:7px}.fields{margin-top:30px;display:grid;gap:28px}.field{min-width:0;position:relative}.field-label,legend{font-size:15px;line-height:1.6;font-weight:500;padding:0;margin-bottom:10px;display:block}.required{color:var(--earth)}.helper{font-size:13px;line-height:1.65;color:var(--muted);margin-top:-2px;margin-bottom:12px}.multi-help{font-size:12px}.optional{display:block;color:var(--muted);font-size:11px;margin-top:6px}.input-wrap{position:relative}input[type=text],input[type=date],input[type=number],textarea{border:1px solid var(--stone);background:#ffffff27;border-radius:var(--radius);padding:15px 16px;width:100%;min-height:54px;color:var(--ink);transition:border .15s;line-height:1.6;font-size:16px}textarea{resize:vertical;min-height:106px}textarea::placeholder{color:#8c8b81}input:hover,textarea:hover{border-color:var(--sage)}input:focus,textarea:focus{border-color:var(--forest);background:#ffffff75}input[type=number]{padding-right:155px}.unit{position:absolute;right:16px;top:18px;font-size:12px;pointer-events:none;color:var(--muted)}fieldset{border:0;margin:0;padding:0;min-width:0}legend{float:none;width:100%}.options{display:grid;grid-template-columns:1fr;gap:9px}.option{padding:13px 16px;min-height:52px;border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;gap:13px;font-size:14px;line-height:1.5;cursor:pointer;position:relative;background:#ffffff1f;transition:background .15s,border-color .15s}.option:hover{border-color:var(--sage);background:#e8e0d64f}.option input{position:absolute;opacity:0;width:1px;height:1px}.option:has(input:focus-visible){outline:3px solid var(--earth);outline-offset:3px}.option.selected{background:#1f3a2e08;border-color:var(--forest);box-shadow:inset 0 0 0 .3px var(--forest)}.choice-mark{flex:0 0 17px;width:17px;height:17px;border:1px solid #9c9f92;color:transparent;border-radius:3px;display:grid;place-items:center;font-size:12px;line-height:1}.option:has(input[type=radio]) .choice-mark{border-radius:50%}.selected .choice-mark{background:var(--forest);color:white;border-color:var(--forest)}.selected:has(input[type=radio]) .choice-mark:after{content:'';background:var(--paper);border-radius:50%;width:5px;height:5px}.binary{grid-template-columns:1fr 1fr}.binary .selected{background:var(--forest);color:var(--paper)}.binary .selected .choice-mark{border-color:var(--paper)}.days{grid-template-columns:repeat(2,minmax(0,1fr))}.form-navigation{display:flex;align-items:center;gap:14px;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;margin-top:36px}.form-navigation .primary{flex:1;max-width:290px}.form-navigation .secondary{min-width:120px}.storage-note{display:flex;justify-content:center;gap:7px;font-size:11px;line-height:1.7;color:var(--muted);margin-top:16px}.save-icon{color:var(--sage)}.save-error,.error{color:var(--error)}.storage-alert{padding:15px;background:var(--sand);margin-top:10px;border-radius:var(--radius)}.storage-alert .text-button{margin-right:20px}.has-error input,.has-error textarea,.has-error .option{border-color:var(--error)}.error{font-size:13px;line-height:1.6;margin-top:8px}.art-panel{position:sticky;align-self:start;top:30px;min-height:660px;height:calc(100svh - 200px);max-height:820px;overflow:hidden;border:1px solid var(--line);border-radius:3px;background:#efe9dc}.art-top{position:absolute;top:27px;left:30px;right:30px;display:flex;justify-content:space-between;z-index:1;font-size:10px;letter-spacing:.12em;color:var(--forest)}.art-panel>img{height:75%;width:165%;max-width:none;object-fit:cover;object-position:58% bottom;position:absolute;bottom:0;left:-34%;mix-blend-mode:multiply}.art-caption{position:absolute;top:80px;left:30px;right:30px;z-index:1}.art-caption>.eyebrow{font-size:8px;letter-spacing:.08em}.art-caption>p{font-family:var(--serif);font-size:clamp(1.75rem,2.4vw,2.5rem);line-height:1.2;letter-spacing:-.025em;margin:18px 0}.art-caption>.fine{display:block;font-size:10px;margin-top:15px}.landscape{background:var(--forest)}.landscape>img{width:100%;height:100%;left:0;object-position:center;mix-blend-mode:normal}.landscape:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#19342840,#142b2166 50%,#142b21cc)}.landscape .art-top,.landscape .art-caption .eyebrow,.landscape .fine,.landscape .art-caption{color:var(--paper)}.landscape .art-caption{top:auto;bottom:40px}.narrative-art{display:none}.narrative-workspace .screen-content{padding-top:45px}.narrative-workspace h1{font-size:clamp(3rem,4.5vw,4.4rem);margin-bottom:30px}.narrative-workspace .form-navigation{margin-top:70px;justify-content:flex-end}.profile-fields{grid-template-columns:1fr 1fr}.profile-fields .field:last-child{grid-column:1/-1}.profile-fields input[type=number]{padding-right:48px}.review-workspace{display:block;max-width:1160px}.review-workspace .form-panel{max-width:none}.review-workspace .progress-wrap{max-width:none}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:32px}.review-card{padding:24px;background:#ffffff2e;border:1px solid var(--line);border-radius:var(--radius);min-width:0}.review-heading{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);padding-bottom:16px}.review-number{font-family:var(--serif);font-size:16px;color:var(--earth)}.review-heading h2{font-size:25px;letter-spacing:-.02em}.review-part+.review-part{border-top:1px solid var(--line);padding-top:6px;margin-top:18px}.review-part-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:9px}.review-part-head>span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.review-part .text-button{font-size:12px;text-decoration:underline}.review-card dl{margin:5px 0 0}.review-card dl>div+div{margin-top:15px}.review-card dt{font-size:12px;line-height:1.6;color:var(--muted)}.review-card dd{font-size:14px;line-height:1.7;margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.unanswered{color:#85877f;font-style:italic}.answer-unit{color:var(--muted);font-size:12px}.review-note{margin-top:24px;background:var(--sand);padding:20px 24px;border-radius:var(--radius);font-size:13px;line-height:1.8;color:var(--muted)}.review-note .text-button{margin-top:4px}.completion{display:grid;grid-template-columns:1fr 1fr;gap:8%;max-width:1500px;margin:auto;padding:45px 6%}.completion-copy{align-self:center}.completion h1{margin:24px 0 32px;font-size:clamp(2.8rem,4.2vw,4.4rem)}.completion-copy>.trace{margin:34px 0}.completion-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.completion-fine{margin-top:20px}.completion .art-panel{position:relative;top:0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:16px 24px;background:var(--forest);color:var(--paper);border-radius:var(--radius);font-size:14px;box-shadow:var(--shadow);z-index:10;max-width:calc(100% - 32px);width:max-content}.notice{font-size:13px;margin-top:20px;color:var(--forest)}.boot{padding:15vh 8%;font-family:var(--serif);font-size:30px}.boot span{display:block;margin-top:20px;font:14px var(--sans)}[hidden]{display:none!important}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media (min-width:1600px){.cover-landscape{min-height:780px}.cover-evolution img{margin-top:-6%}.cover-copy{padding-top:54px}}
@media (max-width:1050px){.site-header{height:105px;padding:20px 5%}.cover{gap:5%;padding-top:28px}.cover-copy{padding-top:22px}.cover h1{font-size:3.6rem}.cover-landscape{min-height:650px;border-radius:90px 90px 3px 3px}.landscape-top{left:20px;right:20px;font-size:8px;top:30px}.landscape-bottom{left:28px;right:28px;bottom:35px}.workspace{gap:5%;padding:30px 5% 0;grid-template-columns:1fr .7fr}.art-panel{min-height:600px}.art-top{left:20px;right:20px}.art-caption{left:20px;right:20px}.art-caption>.eyebrow{display:none}.art-panel>img{object-position:61% bottom}.header-right{gap:22px}.header-label{font-size:10px}.form-navigation .button{padding:16px}.completion{gap:5%}}
@media (max-width:760px){.site-header{height:88px;padding:14px 24px}.brand{width:120px}.brand>span{font-size:9px}.brand strong{font-size:30px}.brand small{font-size:8px;gap:6px}.header-label{display:none}.edition{font-size:10px;border:none;padding:0}.header-right{gap:0}.header-right .text-button{font-size:12px}.cover{display:flex;flex-direction:column;padding:0 24px;gap:0}.cover-copy{padding-top:32px}.cover .eyebrow{font-size:10px;letter-spacing:.12em}.cover h1{font-size:clamp(2.9rem,10vw,4.5rem);margin-top:20px;line-height:1.08}.cover-lead{font-size:14px;margin-top:20px}.cover-cta{margin-top:25px;gap:10px}.cover-cta .button{width:100%;min-height:57px;padding:17px 21px}.cover-cta .fine{font-size:11px}.cover-evolution{margin-top:6px}.cover-evolution img{margin-top:-5%;width:100%}.cover-evolution figcaption{font-size:8px;padding-top:9px}.cover-landscape{min-height:320px;border-radius:3px;margin-top:32px;max-height:420px}.cover-landscape>img{object-position:50% 35%}.landscape-top{top:20px;font-size:8px}.landscape-bottom{left:24px;right:24px;bottom:25px}.landscape-bottom .trace{max-width:350px}.landscape-bottom p{font-size:2rem;margin:12px 0}.landscape-bottom>span{font-size:8px}.cover-storage{font-size:11px;line-height:1.7;padding:20px 0 0}.site-footer{margin:30px 24px 0;padding:19px 0;display:flex;gap:12px;font-size:8px}.site-footer>span:nth-child(2){display:none}.workspace{display:block;padding:24px 24px 0;min-height:calc(100svh - 164px)}.form-panel{max-width:100%}.workspace>.art-panel{display:none}.progress-wrap{margin-bottom:24px}.progress-meta{font-size:10px}.trace{height:38px;margin-top:7px}.screen-content>.eyebrow{font-size:10px;margin-bottom:13px}.screen-content h1{font-size:clamp(2.25rem,8vw,3.1rem);margin-bottom:23px}.body-copy{font-size:14px;line-height:1.85}.intro-body{font-size:15px}.body-copy p+p{margin-top:18px}.fields{margin-top:25px;gap:26px}.field-label,legend{font-size:15px}.helper{font-size:12px;line-height:1.75}.option{padding:13px 14px;font-size:14px;min-height:54px}.options{gap:9px}.form-navigation{margin-top:32px;padding-top:20px;gap:12px}.form-navigation .primary{max-width:none}.form-navigation .secondary{min-width:105px}.form-navigation .button{font-size:14px;padding:16px 14px;min-height:55px}.storage-note{font-size:10px;margin:14px 0 12px}.intro-note{padding:18px 20px;margin-top:26px}.intro-note p{font-size:12px}.narrative-workspace .screen-content{padding-top:18px}.narrative-workspace h1{font-size:clamp(2.5rem,9vw,3.5rem)}.narrative-workspace .form-navigation{margin-top:24px}.narrative-art{display:block;margin-top:16px;position:relative;overflow:hidden;border-radius:3px}.narrative-art img{width:100%;mix-blend-mode:multiply}.narrative-art:has(img[src*='evolution']) img{margin-top:-10%}.narrative-art:has(img[src*='alpine']){height:280px;margin-top:25px}.narrative-art img[src*='alpine']{height:100%;object-fit:cover;object-position:50% 25%;mix-blend-mode:normal}.narrative-art .trace{position:absolute;bottom:12%;left:6%;width:88%;height:auto}.narrative-art:has(img[src*='alpine']) .trace-base{stroke:var(--paper)}.narrative-art:has(img[src*='alpine']) .trace-active{stroke:var(--paper)}.review-grid{grid-template-columns:1fr;gap:16px}.review-card{padding:20px}.review-heading h2{font-size:24px}.review-card dt{font-size:12px}.review-card dd{font-size:14px}.review-part-head .text-button{min-height:44px}.review-note{padding:18px;font-size:12px}.completion{display:flex;flex-direction:column;padding:36px 24px 0;gap:30px}.completion h1{font-size:2.75rem;margin-top:22px}.completion .eyebrow{font-size:10px}.completion .art-panel{min-height:380px;max-height:450px;width:100%;height:420px}.completion .art-panel>img{height:80%;width:140%;left:-20%}.completion .art-caption{top:55px}.completion .art-caption p{font-size:1.9rem}.completion .art-caption>.fine{font-size:9px}.completion-actions{align-items:stretch}.completion-actions .text-button{text-align:center}.completion-fine{text-align:center;font-size:11px}.completion .art-top{top:20px}.completion .trace-large{height:auto}.profile-fields{gap:22px 14px}.profile-fields .field-label{min-height:48px}.unit{font-size:11px}.toast{font-size:13px;padding:14px 18px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media (forced-colors:active){.option input{position:static;opacity:1;width:auto;height:auto}.choice-mark{display:none}.option.selected{outline:2px solid Highlight}}
.review-heading>.text-button{margin-left:auto;font-size:12px}.review-preview{font-size:14px;line-height:1.8;color:var(--forest);padding-top:18px;overflow-wrap:anywhere}.review-card details{margin-top:12px}.review-card summary{font-size:12px;color:var(--muted);padding:12px 0;min-height:44px;cursor:pointer;text-underline-offset:4px}.review-card summary:hover{color:var(--forest)}.review-card summary:focus-visible{outline:2px solid var(--earth);outline-offset:3px}.review-card:has(details[open]){grid-row:auto}
/* A naturalist figure travels along the same SVG curve as the progress stroke. */
.progress-wrap .trace-travel,.completion-copy>.trace-travel{height:auto;margin-top:12px;overflow:visible}
.evolution-traveler{pointer-events:none}
.evolution-sprite{overflow:hidden;filter:drop-shadow(0 1px 1px #f8f5ef99)}
@media (max-width:760px){.progress-wrap .trace-travel{height:auto;margin-top:10px}.progress-wrap{margin-bottom:18px}}
