/* A small illustrated notebook, in CozyNest's existing paper/ink palette. */
.project-heading{padding-block:26px 28px}
.project-heading>.text-link{margin-bottom:22px}
.project-heading h1{font-size:clamp(2.5rem,4vw,4.2rem)}
.project-heading>p:not(.eyebrow){max-width:720px;font-size:15px;color:var(--muted);margin:16px 0}
.journey-intro{display:flex;gap:22px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:18px}
.journey-intro span:before{content:'✓';color:#52735c;margin-right:8px}
.project-layout{grid-template-columns:270px minmax(0,820px);gap:6%;padding-top:32px}
.project-aside{top:115px}
.journey-board{background:#eee7db;border:1px solid #d8cdbb;padding:8px 20px 21px;overflow:hidden;border-radius:3px}
.project-house{width:100%;height:auto;display:block}
.house-part{opacity:.13;transition:opacity .7s ease}
.house-part.unlocked{opacity:1}
.journey-caption .eyebrow{font-size:9px;margin:0 0 12px;color:var(--muted)}
.journey-title{font:27px/1.1 Georgia,serif;margin:0 0 10px;color:var(--ink)}
#journey-message{font-size:11px;color:var(--muted);line-height:1.5;margin:0}
.project-progress{margin:16px 0 22px}
.project-progress li{padding:0;border-bottom:1px solid var(--line)}
.project-progress button{display:flex;align-items:center;gap:12px;width:100%;padding:10px 2px;font:inherit;text-align:left;color:inherit;background:none;border:0;cursor:pointer;min-height:42px}
.project-progress button:disabled{cursor:default;opacity:.65}
.project-progress .progress-number{font:16px Georgia,serif;color:var(--accent);width:28px;flex-shrink:0}
.project-progress .progress-name{font-size:12px}
.project-progress .progress-check{display:none;margin-left:auto;color:#52735c}
.project-progress li.complete .progress-check{display:inline}
.project-progress li.complete .progress-number{color:#52735c}
.project-progress li[aria-current] .progress-number{display:grid;place-items:center;width:28px;height:28px;background:var(--ink);color:var(--paper);border-radius:50%;font-size:12px}
.project-progress button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.project-promise{background:none;border-left:2px solid #b8c4b1;padding:2px 0 2px 15px}
.project-promise .eyebrow{font-size:9px;margin-bottom:9px}
.project-promise p{font-size:11px;line-height:1.55}
.project-promise a{font-size:11px}
.journey-meter{margin-bottom:30px}
.journey-meter>div:first-child{display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
#journey-progress{height:5px;border-radius:10px;background:#e5e3dc;overflow:hidden}
#journey-progress>span{display:block;width:0;height:100%;background:#728871;transition:width .4s ease;border-radius:10px}
#journey-encouragement{font-size:12px;color:#526b57;margin:10px 0 0;min-height:20px}
.step-symbol{float:right;background:#e8eddf;border-radius:50%;padding:14px;margin:0 0 14px 20px;transform:rotate(-7deg)}
.step-symbol .choice-icon{display:block;width:46px;height:46px;color:#496249}
.project-panel>.eyebrow{font-size:10px;margin-bottom:13px}
.project-panel h2{font-size:clamp(2.3rem,3.3vw,3.2rem)}
.panel-intro{margin:18px 0 28px;font-size:14px}
#project-form .choice-group{clear:both;margin-bottom:34px}
#project-form .choice-grid{gap:10px}
#project-form .choice{border-color:#d2cbbb;border-radius:3px;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#project-form .choice:hover{border-color:#a2775d;background:#f3eee4;transform:translateY(-2px)}
#project-form .choice:has(input:checked){background:#e9eee3;border-color:#61775c;box-shadow:inset 0 0 0 1px #61775c}
#project-form .choice input{accent-color:#506b50}
#project-form .choice-title{display:block;font-size:13px;line-height:1.4}
#project-form .choice-description{display:block;font-size:12px;line-height:1.6;font-weight:400;color:var(--muted);margin-top:8px}
#project-form .visual-choices{grid-template-columns:repeat(3,minmax(0,1fr))}
#project-form .illustrated-choice{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:11px;padding:17px 32px 16px 16px;min-height:116px}
#project-form .illustrated-choice input{position:absolute;right:12px;top:15px;width:16px;height:16px}
#project-form .choice-icon{width:38px;height:38px;color:#a4674d;flex-shrink:0;display:block}
#project-form .illustrated-choice:has(input:checked) .choice-icon{color:#506b50}
#project-form [data-group=mission] .illustrated-choice{min-height:200px}
#project-form [data-group=mission] [data-choice=globale],#project-form [data-group=mission] [data-choice=definir]{grid-column:1/-1;min-height:90px;flex-direction:row;align-items:center;gap:20px;padding-right:42px}
#project-form [data-group=mission] [data-choice=globale]{background:#eee8de}
#project-form [data-group=mission] [data-choice=globale]:has(input:checked){background:#e9eee3}
#project-form [data-group=mission] [data-choice=definir]{min-height:80px}
#project-form [data-group=mission] .choice-title{font-weight:600;font-size:14px}
.selection-note{font-size:12px;line-height:1.6;color:#526b57;padding:12px 15px;border-left:2px solid #94a88b;background:#edf0e7;margin:13px 0 0}
.project-actions{background:var(--paper)}
.project-actions .button{min-width:225px}
.summary-group{border:1px solid #ded7ca;border-radius:3px;padding:23px;margin:18px 0;background:#fffdf8}
.summary-heading h3{font-size:25px}
.project-success .success-mark{animation:welcome-mark .45s ease both}
.project-aside.finished .project-progress{opacity:1}
.project-aside.finished .project-progress button{opacity:1}
@keyframes welcome-mark{from{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}
@media(max-width:1100px){.project-layout{grid-template-columns:230px minmax(0,1fr);gap:4%}.journey-title{font-size:25px}#project-form .visual-choices{grid-template-columns:repeat(2,minmax(0,1fr))}#project-form [data-group=mission] .visual-choices{grid-template-columns:1fr}#project-form [data-group=mission] .illustrated-choice{flex-direction:row;min-height:100px;gap:18px;align-items:flex-start}.project-aside{top:105px}}
@media(max-width:800px){.project-layout{display:block;padding-top:22px}.project-aside{position:static}.journey-board{display:flex;align-items:center;gap:15px;padding:6px 17px 10px}.journey-art{flex:0 0 130px}.journey-caption{min-width:0}.journey-caption .eyebrow{font-size:8px;margin-bottom:8px}.journey-title{font-size:24px;margin-bottom:8px}#journey-message{font-size:10px}.project-progress{display:flex;gap:10px;margin:14px 0 20px;padding-bottom:5px;overflow-x:auto}.project-progress li{flex:0 0 auto}.project-progress button{gap:7px;padding:7px 5px;min-height:38px}.project-progress .progress-number{width:22px;font-size:14px}.project-progress .progress-name{font-size:10px}.project-progress .progress-check{font-size:11px}.project-progress li[aria-current] .progress-number{width:23px;height:23px}.project-promise{display:none}.journey-meter{margin-bottom:28px}.project-main{scroll-margin-top:100px}#project-form .visual-choices{grid-template-columns:repeat(3,minmax(0,1fr))}#project-form [data-group=mission] .visual-choices{grid-template-columns:repeat(3,minmax(0,1fr))}#project-form [data-group=mission] .illustrated-choice{flex-direction:column;min-height:190px}#project-form [data-group=mission] [data-choice=globale],#project-form [data-group=mission] [data-choice=definir]{flex-direction:row;min-height:85px}.step-symbol{padding:12px}.step-symbol .choice-icon{width:36px;height:36px}}
@media(max-width:540px){.project-heading{padding-top:22px}.project-heading h1{font-size:34px}.project-heading>p:not(.eyebrow){font-size:13px}.journey-intro{gap:8px 18px;font-size:10px}.journey-art{flex-basis:105px}.journey-board{gap:10px;padding-inline:9px}.journey-title{font-size:21px}.project-progress{margin-right:0}.project-progress .progress-name{display:none}.project-progress li[aria-current] .progress-name{display:inline}.project-progress .progress-check{display:none!important}.project-progress{justify-content:space-between;gap:3px}.project-progress button{padding:6px 2px;gap:4px}.journey-meter{margin-bottom:24px}.journey-meter>div:first-child{font-size:10px}.project-panel h2{font-size:31px}.step-symbol{padding:10px;margin-left:12px}.step-symbol .choice-icon{width:30px;height:30px}.panel-intro{font-size:13px}.project-panel>.eyebrow{font-size:9px}#project-form .visual-choices{grid-template-columns:repeat(2,minmax(0,1fr))}#project-form .illustrated-choice{padding:14px 29px 13px 13px;min-height:109px}#project-form .choice-icon{width:33px;height:33px}#project-form .choice-title{font-size:12px}#project-form [data-group=mission] .visual-choices{grid-template-columns:1fr}#project-form [data-group=mission] .illustrated-choice{flex-direction:row;gap:15px;min-height:96px;align-items:flex-start}#project-form [data-group=mission] .choice-title{font-size:13px}#project-form .choice-description{font-size:12px;margin-top:6px}#project-form [data-group=mission] [data-choice=globale],#project-form [data-group=mission] [data-choice=definir]{gap:15px}.choice-group legend{font-size:14px}.field-hint{font-size:12px}.project-actions{gap:14px}.summary-group{padding:18px}.summary-heading h3{font-size:24px}.project-success h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.house-part,#journey-progress>span,#project-form .choice,.project-success .success-mark{transition:none;animation:none}#project-form .choice:hover{transform:none}}
@media print{.journey-meter,.step-symbol{display:none!important}.summary-group{border:0;border-top:1px solid #ccc;background:white;padding:14px 0;margin:0}}
